Ok but im talking about your first code.
Yor first code d ont have the !!.
Remember your second code work fine and shift right. Is ok.
But for my propose i need shift left. Like yor first code. Yor first code work but dont cary byte 0 to byte 2......
So I ask you if you teste yor firt code and fix the cary error.
Now im not able to test uni code. Just tomorrow morning i can test.