refactor Tile
refactor Tile