naive out of boundary check