class_docstr: Flattening preserves axis separators
  
  Like TestFlattenAllocBufferWithAxisSeparators, but the allocations
  is done using Allocate/DeclBuffer, rather than through
  BlockNode::alloc_buffers.
class_docstr_tok: ["Flattening","preserves","axis","separators","Like","TestFlattenAllocBufferWithAxisSeparators",",","but","the","allocations","is","done","using","Allocate\/DeclBuffer",",","rather","than","through","BlockNode",":",":alloc_buffers","."]
code: def expected():
      A_data = T.allocate([30, 1001], dtype="float32", scope="global")
      A = T.Buffer(
          [30, 1001],
          dtype="float32",
          scope="global",
          axis_separators=[1],
          data=A_data,
      )
      for i0, i1, i2, i3, i4, i5 in T.grid(2, 3, 5, 7, 11, 13):
          T.evaluate(A[i0 * 15 + i1 * 5 + i2, i3 * 143 + i4 * 13 + i5])
  
imports: import tvm
  import tvm.testing
  from tvm import te
  from tvm.script import tir
label_desc: Use image node_id 2 for calling the TestFlattenDeclBufferWithAxisSeparators obj's underlying member method code with example usage: obj.expected() without return types