code: def __new__(cls, values, layout):
      kwargs = {}
      kwargs["device"] = values.device
      kwargs["dtype"] = values.dtype
      kwargs["layout"] = values.layout
      kwargs["requires_grad"] = values.requires_grad
      assert values.ndim == 4
      B, _, block_size, _ = values.shape
      C, h, w = layout.shape
      # TODO validate shape of layout vs values
      shape = (B, C, block_size * h, block_size * w)
      return torch.Tensor._make_wrapper_subclass(cls, shape, **kwargs)
  
imports: import logging
  import torch
  from xformers import _is_triton_available
  from xformers.ops import masked_matmul
label_desc: Use image node_id 1 for calling the BlockSparseTensor obj's underlying member method code with example usage: obj.__new__(cls, values, layout) and returns: torch