prevent signed/unsigned comparison