Precedence: & ^ | over ==; added shift ops.
Separated def,var from fun.
Tweaks in declarations.