code: def tile(self, username, style_id, z, x, y, tile_size=512, retina=False):
          "/styles/v1/{username}/{style_id}/tiles/{tileSize}/{z}/{x}/{y}{@2x}"
          if tile_size not in (256, 512):
              raise errors.ImageSizeError('tile_size must be 256 or 512 pixels')
  
          pth = '/{username}/{style_id}/tiles/{tile_size}/{z}/{x}/{y}'
  
          values = dict(username=username, style_id=style_id,
                        tile_size=tile_size, z=z, x=x, y=y)
  
          uri = URITemplate(self.baseuri + pth).expand(**values)
          if retina:
              uri += '@2x'
          res = self.session.get(uri)
          self.handle_http_error(res)
          return ref tile(self, username, style_id, z, x, y, tile_size=512, retina=False):
          "/styles/v1/{username}/{style_id}/tiles/{tileSize}/{z}/{x}/{y}{@2x}"
          if tile_size not in (256, 512):
              raise errors.ImageSizeError('tile_size must be 256 or 512 pixels')
  
          pth = '/{username}/{style_id}/tiles/{tile_size}/{z}/{x}/{y}'
  
          values = dict(username=username, style_id=style_id,
                        tile_size=tile_size, z=z, x=x, y=y)
  
          uri = URITemplate(self.baseuri + pth).expand(**values)
          if retina:
              uri += '@2x'
          res = self.session.get(uri)
          self.handle_http_error(res)
          return res
docs: /styles/v1/{username}/{style_id}/tiles/{tileSize}/{z}/{x}/{y}{@2x}