avoid bit operation