I can only assume these names stand for row and column? If so, it may make sense to name them `row` and `col` so it's more understandable at first glance. It may also be helpful to add a one or two line comment explaining the the basics of the logic behind these methods (the same feedback applies to `canMoveLeft`, etc)