moved #is_land? to private