BUGFIX: changed algorithm of subtraction and fixed a bug in lShift