import torch
from torch._inductor.select_algorithm import extern_kernels
import triton
import triton.language as tl
from torch._inductor.runtime.triton_heuristics import grid
from torch._C import _cuda_getCurrentRawStream as get_raw_stream
from torch._inductor.runtime import triton_helpers
from torch._inductor.runtime.triton_helpers import libdevice
import torchvision.transforms.functional as F
import torch.nn as nn
import torch.nn.functional as F
import torch.utils.data
import torch.optim
assert_size_stride = torch._C._dynamo.guards.assert_size_stride
empty_strided_cuda = torch._C._dynamo.guards._empty_strided_cuda
reinterpret_tensor = torch._C._dynamo.guards._reinterpret_tensor


@triton.jit
def triton_poi_fused_0(in_ptr0, out_ptr0, ynumel, xnumel, YBLOCK: tl.
    constexpr, XBLOCK: tl.constexpr):
    ynumel = 512
    xnumel = 16
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    ymask = yindex < ynumel
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 128
    y1 = yindex // 128
    tmp0 = tl.load(in_ptr0 + (x2 + 16 * y3), xmask & ymask, eviction_policy
        ='evict_last')
    tl.store(out_ptr0 + (y0 + 128 * x2 + 2048 * y1), tmp0, xmask & ymask)


@triton.jit
def triton_poi_fused_1(in_ptr0, out_ptr0, ynumel, xnumel, YBLOCK: tl.
    constexpr, XBLOCK: tl.constexpr):
    xnumel = 9
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    tl.full([XBLOCK, YBLOCK], True, tl.int1)
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 64
    y1 = yindex // 64
    tmp0 = tl.load(in_ptr0 + (x2 + 9 * y3), xmask, eviction_policy='evict_last'
        )
    tl.store(out_ptr0 + (y0 + 64 * x2 + 576 * y1), tmp0, xmask)


@triton.jit
def triton_poi_fused_2(in_ptr0, out_ptr0, ynumel, xnumel, YBLOCK: tl.
    constexpr, XBLOCK: tl.constexpr):
    xnumel = 3
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    tl.full([XBLOCK, YBLOCK], True, tl.int1)
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 64
    y1 = yindex // 64
    tmp0 = tl.load(in_ptr0 + (x2 + 3 * y3), xmask, eviction_policy='evict_last'
        )
    tl.store(out_ptr0 + (y0 + 64 * x2 + 192 * y1), tmp0, xmask)


@triton.jit
def triton_poi_fused_3(in_ptr0, out_ptr0, ynumel, xnumel, YBLOCK: tl.
    constexpr, XBLOCK: tl.constexpr):
    xnumel = 9
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    tl.full([XBLOCK, YBLOCK], True, tl.int1)
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 32
    y1 = yindex // 32
    tmp0 = tl.load(in_ptr0 + (x2 + 9 * y3), xmask, eviction_policy='evict_last'
        )
    tl.store(out_ptr0 + (y0 + 32 * x2 + 288 * y1), tmp0, xmask)


@triton.jit
def triton_poi_fused_4(in_ptr0, out_ptr0, ynumel, xnumel, YBLOCK: tl.
    constexpr, XBLOCK: tl.constexpr):
    xnumel = 3
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    tl.full([XBLOCK, YBLOCK], True, tl.int1)
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 32
    y1 = yindex // 32
    tmp0 = tl.load(in_ptr0 + (x2 + 3 * y3), xmask, eviction_policy='evict_last'
        )
    tl.store(out_ptr0 + (y0 + 32 * x2 + 96 * y1), tmp0, xmask)


@triton.jit
def triton_poi_fused_5(in_ptr0, out_ptr0, ynumel, xnumel, YBLOCK: tl.
    constexpr, XBLOCK: tl.constexpr):
    ynumel = 128
    xnumel = 4
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    ymask = yindex < ynumel
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 4
    y1 = yindex // 4
    tmp0 = tl.load(in_ptr0 + (x2 + 4 * y3), xmask & ymask, eviction_policy=
        'evict_last')
    tl.store(out_ptr0 + (y0 + 4 * x2 + 16 * y1), tmp0, xmask & ymask)


@triton.jit
def triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_6(
    in_out_ptr0, in_ptr0, in_ptr1, in_ptr2, in_ptr3, in_ptr4, out_ptr0,
    xnumel, XBLOCK: tl.constexpr):
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:]
    tl.full([XBLOCK], True, tl.int1)
    x2 = xindex
    x0 = xindex % 64
    tmp0 = tl.load(in_out_ptr0 + x2, None)
    tmp1 = tl.load(in_ptr0 + x0, None, eviction_policy='evict_last')
    tmp3 = tl.load(in_ptr1 + x0, None, eviction_policy='evict_last')
    tmp5 = tl.load(in_ptr2 + x0, None, eviction_policy='evict_last')
    tmp14 = tl.load(in_ptr3 + x0, None, eviction_policy='evict_last')
    tmp16 = tl.load(in_ptr4 + x0, None, eviction_policy='evict_last')
    tmp2 = tmp0 + tmp1
    tmp4 = tmp2 - tmp3
    tmp6 = 0.001
    tmp7 = tmp5 + tmp6
    tmp8 = libdevice.sqrt(tmp7)
    tmp9 = tl.full([1], 1, tl.int32)
    tmp10 = tmp9 / tmp8
    tmp11 = 1.0
    tmp12 = tmp10 * tmp11
    tmp13 = tmp4 * tmp12
    tmp15 = tmp13 * tmp14
    tmp17 = tmp15 + tmp16
    tmp18 = tl.full([1], 0, tl.int32)
    tmp19 = triton_helpers.maximum(tmp18, tmp17)
    tl.store(in_out_ptr0 + x2, tmp2, None)
    tl.store(out_ptr0 + x2, tmp19, None)


@triton.jit
def triton_poi_fused_convolution_relu_7(in_out_ptr0, in_ptr0, xnumel,
    XBLOCK: tl.constexpr):
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:]
    tl.full([XBLOCK], True, tl.int1)
    x2 = xindex
    x0 = xindex % 64
    tmp0 = tl.load(in_out_ptr0 + x2, None)
    tmp1 = tl.load(in_ptr0 + x0, None, eviction_policy='evict_last')
    tmp2 = tmp0 + tmp1
    tmp3 = tl.full([1], 0, tl.int32)
    tmp4 = triton_helpers.maximum(tmp3, tmp2)
    tl.store(in_out_ptr0 + x2, tmp4, None)


@triton.jit
def triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_8(
    in_out_ptr0, in_ptr0, in_ptr1, in_ptr2, in_ptr3, in_ptr4, in_ptr5,
    out_ptr0, xnumel, XBLOCK: tl.constexpr):
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:]
    tl.full([XBLOCK], True, tl.int1)
    x2 = xindex
    x0 = xindex % 64
    tmp0 = tl.load(in_out_ptr0 + x2, None)
    tmp1 = tl.load(in_ptr0 + x0, None, eviction_policy='evict_last')
    tmp3 = tl.load(in_ptr1 + x0, None, eviction_policy='evict_last')
    tmp5 = tl.load(in_ptr2 + x0, None, eviction_policy='evict_last')
    tmp14 = tl.load(in_ptr3 + x0, None, eviction_policy='evict_last')
    tmp16 = tl.load(in_ptr4 + x0, None, eviction_policy='evict_last')
    tmp18 = tl.load(in_ptr5 + x2, None)
    tmp2 = tmp0 + tmp1
    tmp4 = tmp2 - tmp3
    tmp6 = 0.001
    tmp7 = tmp5 + tmp6
    tmp8 = libdevice.sqrt(tmp7)
    tmp9 = tl.full([1], 1, tl.int32)
    tmp10 = tmp9 / tmp8
    tmp11 = 1.0
    tmp12 = tmp10 * tmp11
    tmp13 = tmp4 * tmp12
    tmp15 = tmp13 * tmp14
    tmp17 = tmp15 + tmp16
    tmp19 = tmp17 + tmp18
    tmp20 = tl.full([1], 0, tl.int32)
    tmp21 = triton_helpers.maximum(tmp20, tmp19)
    tl.store(in_out_ptr0 + x2, tmp2, None)
    tl.store(out_ptr0 + x2, tmp21, None)


@triton.jit
def triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_9(
    in_out_ptr0, in_ptr0, in_ptr1, in_ptr2, in_ptr3, in_ptr4, in_ptr5,
    out_ptr0, ynumel, xnumel, YBLOCK: tl.constexpr, XBLOCK: tl.constexpr):
    ynumel = 256
    xnumel = 64
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    ymask = yindex < ynumel
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x1 = xindex
    y0 = yindex
    y2 = yindex % 64
    y3 = yindex // 64
    tmp0 = tl.load(in_out_ptr0 + (x1 + 64 * y0), xmask & ymask,
        eviction_policy='evict_last')
    tmp1 = tl.load(in_ptr0 + x1, xmask, eviction_policy='evict_last')
    tmp3 = tl.load(in_ptr1 + x1, xmask, eviction_policy='evict_last')
    tmp5 = tl.load(in_ptr2 + x1, xmask, eviction_policy='evict_last')
    tmp14 = tl.load(in_ptr3 + x1, xmask, eviction_policy='evict_last')
    tmp16 = tl.load(in_ptr4 + x1, xmask, eviction_policy='evict_last')
    tmp18 = tl.load(in_ptr5 + (x1 + 64 * y0), xmask & ymask,
        eviction_policy='evict_last')
    tmp2 = tmp0 + tmp1
    tmp4 = tmp2 - tmp3
    tmp6 = 0.001
    tmp7 = tmp5 + tmp6
    tmp8 = libdevice.sqrt(tmp7)
    tmp9 = tl.full([1, 1], 1, tl.int32)
    tmp10 = tmp9 / tmp8
    tmp11 = 1.0
    tmp12 = tmp10 * tmp11
    tmp13 = tmp4 * tmp12
    tmp15 = tmp13 * tmp14
    tmp17 = tmp15 + tmp16
    tmp19 = tmp17 + tmp18
    tmp20 = tl.full([1, 1], 0, tl.int32)
    tmp21 = triton_helpers.maximum(tmp20, tmp19)
    tl.debug_barrier()
    tl.store(in_out_ptr0 + (x1 + 64 * y0), tmp2, xmask & ymask)
    tl.store(out_ptr0 + (y2 + 64 * x1 + 4096 * y3), tmp21, xmask & ymask)


@triton.jit
def triton_poi_fused_convolution_10(in_ptr0, out_ptr0, ynumel, xnumel,
    YBLOCK: tl.constexpr, XBLOCK: tl.constexpr):
    ynumel = 256
    xnumel = 64
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    ymask = yindex < ynumel
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 64
    y1 = yindex // 64
    tmp0 = tl.load(in_ptr0 + (x2 + 64 * y3), xmask & ymask, eviction_policy
        ='evict_last')
    tl.store(out_ptr0 + (y0 + 64 * x2 + 4096 * y1), tmp0, xmask & ymask)


@triton.jit
def triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_11(
    in_out_ptr0, in_ptr0, in_ptr1, in_ptr2, in_ptr3, in_ptr4, out_ptr0,
    xnumel, XBLOCK: tl.constexpr):
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:]
    tl.full([XBLOCK], True, tl.int1)
    x2 = xindex
    x0 = xindex % 32
    tmp0 = tl.load(in_out_ptr0 + x2, None)
    tmp1 = tl.load(in_ptr0 + x0, None, eviction_policy='evict_last')
    tmp3 = tl.load(in_ptr1 + x0, None, eviction_policy='evict_last')
    tmp5 = tl.load(in_ptr2 + x0, None, eviction_policy='evict_last')
    tmp14 = tl.load(in_ptr3 + x0, None, eviction_policy='evict_last')
    tmp16 = tl.load(in_ptr4 + x0, None, eviction_policy='evict_last')
    tmp2 = tmp0 + tmp1
    tmp4 = tmp2 - tmp3
    tmp6 = 0.001
    tmp7 = tmp5 + tmp6
    tmp8 = libdevice.sqrt(tmp7)
    tmp9 = tl.full([1], 1, tl.int32)
    tmp10 = tmp9 / tmp8
    tmp11 = 1.0
    tmp12 = tmp10 * tmp11
    tmp13 = tmp4 * tmp12
    tmp15 = tmp13 * tmp14
    tmp17 = tmp15 + tmp16
    tmp18 = tl.full([1], 0, tl.int32)
    tmp19 = triton_helpers.maximum(tmp18, tmp17)
    tl.store(in_out_ptr0 + x2, tmp2, None)
    tl.store(out_ptr0 + x2, tmp19, None)


@triton.jit
def triton_poi_fused_convolution_relu_12(in_out_ptr0, in_ptr0, xnumel,
    XBLOCK: tl.constexpr):
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:]
    tl.full([XBLOCK], True, tl.int1)
    x2 = xindex
    x0 = xindex % 32
    tmp0 = tl.load(in_out_ptr0 + x2, None)
    tmp1 = tl.load(in_ptr0 + x0, None, eviction_policy='evict_last')
    tmp2 = tmp0 + tmp1
    tmp3 = tl.full([1], 0, tl.int32)
    tmp4 = triton_helpers.maximum(tmp3, tmp2)
    tl.store(in_out_ptr0 + x2, tmp4, None)


@triton.jit
def triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_13(
    in_out_ptr0, in_ptr0, in_ptr1, in_ptr2, in_ptr3, in_ptr4, in_ptr5,
    out_ptr0, xnumel, XBLOCK: tl.constexpr):
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:]
    tl.full([XBLOCK], True, tl.int1)
    x2 = xindex
    x0 = xindex % 32
    tmp0 = tl.load(in_out_ptr0 + x2, None)
    tmp1 = tl.load(in_ptr0 + x0, None, eviction_policy='evict_last')
    tmp3 = tl.load(in_ptr1 + x0, None, eviction_policy='evict_last')
    tmp5 = tl.load(in_ptr2 + x0, None, eviction_policy='evict_last')
    tmp14 = tl.load(in_ptr3 + x0, None, eviction_policy='evict_last')
    tmp16 = tl.load(in_ptr4 + x0, None, eviction_policy='evict_last')
    tmp18 = tl.load(in_ptr5 + x2, None)
    tmp2 = tmp0 + tmp1
    tmp4 = tmp2 - tmp3
    tmp6 = 0.001
    tmp7 = tmp5 + tmp6
    tmp8 = libdevice.sqrt(tmp7)
    tmp9 = tl.full([1], 1, tl.int32)
    tmp10 = tmp9 / tmp8
    tmp11 = 1.0
    tmp12 = tmp10 * tmp11
    tmp13 = tmp4 * tmp12
    tmp15 = tmp13 * tmp14
    tmp17 = tmp15 + tmp16
    tmp19 = tmp17 + tmp18
    tmp20 = tl.full([1], 0, tl.int32)
    tmp21 = triton_helpers.maximum(tmp20, tmp19)
    tl.store(in_out_ptr0 + x2, tmp2, None)
    tl.store(out_ptr0 + x2, tmp21, None)


@triton.jit
def triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_14(
    in_out_ptr0, in_ptr0, in_ptr1, in_ptr2, in_ptr3, in_ptr4, in_ptr5,
    out_ptr0, ynumel, xnumel, YBLOCK: tl.constexpr, XBLOCK: tl.constexpr):
    xnumel = 32
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    tl.full([XBLOCK, YBLOCK], True, tl.int1)
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x1 = xindex
    y0 = yindex
    y2 = yindex % 256
    y3 = yindex // 256
    tmp0 = tl.load(in_out_ptr0 + (x1 + 32 * y0), xmask, eviction_policy=
        'evict_last')
    tmp1 = tl.load(in_ptr0 + x1, xmask, eviction_policy='evict_last')
    tmp3 = tl.load(in_ptr1 + x1, xmask, eviction_policy='evict_last')
    tmp5 = tl.load(in_ptr2 + x1, xmask, eviction_policy='evict_last')
    tmp14 = tl.load(in_ptr3 + x1, xmask, eviction_policy='evict_last')
    tmp16 = tl.load(in_ptr4 + x1, xmask, eviction_policy='evict_last')
    tmp18 = tl.load(in_ptr5 + (x1 + 32 * y0), xmask, eviction_policy=
        'evict_last')
    tmp2 = tmp0 + tmp1
    tmp4 = tmp2 - tmp3
    tmp6 = 0.001
    tmp7 = tmp5 + tmp6
    tmp8 = libdevice.sqrt(tmp7)
    tmp9 = tl.full([1, 1], 1, tl.int32)
    tmp10 = tmp9 / tmp8
    tmp11 = 1.0
    tmp12 = tmp10 * tmp11
    tmp13 = tmp4 * tmp12
    tmp15 = tmp13 * tmp14
    tmp17 = tmp15 + tmp16
    tmp19 = tmp17 + tmp18
    tmp20 = tl.full([1, 1], 0, tl.int32)
    tmp21 = triton_helpers.maximum(tmp20, tmp19)
    tl.debug_barrier()
    tl.store(in_out_ptr0 + (x1 + 32 * y0), tmp2, xmask)
    tl.store(out_ptr0 + (y2 + 256 * x1 + 8192 * y3), tmp21, xmask)


@triton.jit
def triton_poi_fused_convolution_15(in_ptr0, out_ptr0, ynumel, xnumel,
    YBLOCK: tl.constexpr, XBLOCK: tl.constexpr):
    ynumel = 128
    xnumel = 256
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    ymask = yindex < ynumel
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y3 = yindex
    y0 = yindex % 32
    y1 = yindex // 32
    tmp0 = tl.load(in_ptr0 + (x2 + 256 * y3), xmask & ymask,
        eviction_policy='evict_last')
    tl.store(out_ptr0 + (y0 + 32 * x2 + 8192 * y1), tmp0, xmask & ymask)


@triton.jit
def triton_poi_fused_convolution_16(in_ptr0, in_ptr1, out_ptr0, ynumel,
    xnumel, YBLOCK: tl.constexpr, XBLOCK: tl.constexpr):
    ynumel = 16
    xnumel = 1024
    yoffset = tl.program_id(1) * YBLOCK
    yindex = yoffset + tl.arange(0, YBLOCK)[None, :]
    ymask = yindex < ynumel
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    x2 = xindex
    y0 = yindex % 4
    y1 = yindex // 4
    y3 = yindex
    tmp0 = tl.load(in_ptr0 + (y0 + 4 * x2 + 4096 * y1), xmask & ymask,
        eviction_policy='evict_last')
    tmp1 = tl.load(in_ptr1 + y0, ymask, eviction_policy='evict_last')
    tmp2 = tmp0 + tmp1
    tl.store(out_ptr0 + (x2 + 1024 * y3), tmp2, xmask & ymask)


def call(args):
    (primals_1, primals_2, primals_3, primals_4, primals_5, primals_6,
        primals_7, primals_8, primals_9, primals_10, primals_11, primals_12,
        primals_13, primals_14, primals_15, primals_16, primals_17,
        primals_18, primals_19, primals_20, primals_21, primals_22,
        primals_23, primals_24, primals_25, primals_26, primals_27,
        primals_28, primals_29, primals_30, primals_31, primals_32,
        primals_33, primals_34, primals_35, primals_36, primals_37,
        primals_38, primals_39, primals_40, primals_41, primals_42,
        primals_43, primals_44, primals_45, primals_46, primals_47,
        primals_48, primals_49, primals_50, primals_51, primals_52,
        primals_53, primals_54, primals_55, primals_56, primals_57,
        primals_58, primals_59, primals_60, primals_61, primals_62,
        primals_63, primals_64, primals_65, primals_66, primals_67,
        primals_68, primals_69, primals_70, primals_71, primals_72,
        primals_73, primals_74, primals_75, primals_76, primals_77,
        primals_78, primals_79) = args
    args.clear()
    assert_size_stride(primals_1, (4, 128, 4, 4), (2048, 16, 4, 1))
    assert_size_stride(primals_2, (128, 64, 3, 3), (576, 9, 3, 1))
    assert_size_stride(primals_3, (64,), (1,))
    assert_size_stride(primals_4, (64,), (1,))
    assert_size_stride(primals_5, (64,), (1,))
    assert_size_stride(primals_6, (64,), (1,))
    assert_size_stride(primals_7, (64,), (1,))
    assert_size_stride(primals_8, (64, 64, 3, 1), (192, 3, 1, 1))
    assert_size_stride(primals_9, (64,), (1,))
    assert_size_stride(primals_10, (64, 64, 1, 3), (192, 3, 3, 1))
    assert_size_stride(primals_11, (64,), (1,))
    assert_size_stride(primals_12, (64,), (1,))
    assert_size_stride(primals_13, (64,), (1,))
    assert_size_stride(primals_14, (64,), (1,))
    assert_size_stride(primals_15, (64,), (1,))
    assert_size_stride(primals_16, (64, 64, 3, 1), (192, 3, 1, 1))
    assert_size_stride(primals_17, (64,), (1,))
    assert_size_stride(primals_18, (64, 64, 1, 3), (192, 3, 3, 1))
    assert_size_stride(primals_19, (64,), (1,))
    assert_size_stride(primals_20, (64,), (1,))
    assert_size_stride(primals_21, (64,), (1,))
    assert_size_stride(primals_22, (64,), (1,))
    assert_size_stride(primals_23, (64,), (1,))
    assert_size_stride(primals_24, (64, 64, 3, 1), (192, 3, 1, 1))
    assert_size_stride(primals_25, (64,), (1,))
    assert_size_stride(primals_26, (64, 64, 1, 3), (192, 3, 3, 1))
    assert_size_stride(primals_27, (64,), (1,))
    assert_size_stride(primals_28, (64,), (1,))
    assert_size_stride(primals_29, (64,), (1,))
    assert_size_stride(primals_30, (64,), (1,))
    assert_size_stride(primals_31, (64,), (1,))
    assert_size_stride(primals_32, (64, 64, 3, 1), (192, 3, 1, 1))
    assert_size_stride(primals_33, (64,), (1,))
    assert_size_stride(primals_34, (64, 64, 1, 3), (192, 3, 3, 1))
    assert_size_stride(primals_35, (64,), (1,))
    assert_size_stride(primals_36, (64,), (1,))
    assert_size_stride(primals_37, (64,), (1,))
    assert_size_stride(primals_38, (64,), (1,))
    assert_size_stride(primals_39, (64,), (1,))
    assert_size_stride(primals_40, (64, 32, 3, 3), (288, 9, 3, 1))
    assert_size_stride(primals_41, (32,), (1,))
    assert_size_stride(primals_42, (32,), (1,))
    assert_size_stride(primals_43, (32,), (1,))
    assert_size_stride(primals_44, (32,), (1,))
    assert_size_stride(primals_45, (32,), (1,))
    assert_size_stride(primals_46, (32, 32, 3, 1), (96, 3, 1, 1))
    assert_size_stride(primals_47, (32,), (1,))
    assert_size_stride(primals_48, (32, 32, 1, 3), (96, 3, 3, 1))
    assert_size_stride(primals_49, (32,), (1,))
    assert_size_stride(primals_50, (32,), (1,))
    assert_size_stride(primals_51, (32,), (1,))
    assert_size_stride(primals_52, (32,), (1,))
    assert_size_stride(primals_53, (32,), (1,))
    assert_size_stride(primals_54, (32, 32, 3, 1), (96, 3, 1, 1))
    assert_size_stride(primals_55, (32,), (1,))
    assert_size_stride(primals_56, (32, 32, 1, 3), (96, 3, 3, 1))
    assert_size_stride(primals_57, (32,), (1,))
    assert_size_stride(primals_58, (32,), (1,))
    assert_size_stride(primals_59, (32,), (1,))
    assert_size_stride(primals_60, (32,), (1,))
    assert_size_stride(primals_61, (32,), (1,))
    assert_size_stride(primals_62, (32, 32, 3, 1), (96, 3, 1, 1))
    assert_size_stride(primals_63, (32,), (1,))
    assert_size_stride(primals_64, (32, 32, 1, 3), (96, 3, 3, 1))
    assert_size_stride(primals_65, (32,), (1,))
    assert_size_stride(primals_66, (32,), (1,))
    assert_size_stride(primals_67, (32,), (1,))
    assert_size_stride(primals_68, (32,), (1,))
    assert_size_stride(primals_69, (32,), (1,))
    assert_size_stride(primals_70, (32, 32, 3, 1), (96, 3, 1, 1))
    assert_size_stride(primals_71, (32,), (1,))
    assert_size_stride(primals_72, (32, 32, 1, 3), (96, 3, 3, 1))
    assert_size_stride(primals_73, (32,), (1,))
    assert_size_stride(primals_74, (32,), (1,))
    assert_size_stride(primals_75, (32,), (1,))
    assert_size_stride(primals_76, (32,), (1,))
    assert_size_stride(primals_77, (32,), (1,))
    assert_size_stride(primals_78, (32, 4, 2, 2), (16, 4, 2, 1))
    assert_size_stride(primals_79, (4,), (1,))
    with torch.cuda._DeviceGuard(0):
        torch.cuda.set_device(0)
        buf0 = empty_strided_cuda((4, 128, 4, 4), (2048, 1, 512, 128),
            torch.float32)
        get_raw_stream(0)
        triton_poi_fused_0[grid(512, 16)](primals_1, buf0, 512, 16, XBLOCK=
            16, YBLOCK=64, num_warps=4, num_stages=1)
        del primals_1
        buf1 = empty_strided_cuda((128, 64, 3, 3), (576, 1, 192, 64), torch
            .float32)
        triton_poi_fused_1[grid(8192, 9)](primals_2, buf1, 8192, 9, XBLOCK=
            16, YBLOCK=64, num_warps=4, num_stages=1)
        del primals_2
        buf2 = empty_strided_cuda((64, 64, 3, 1), (192, 1, 64, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_8, buf2, 4096, 3, XBLOCK=
            4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_8
        buf3 = empty_strided_cuda((64, 64, 1, 3), (192, 1, 192, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_10, buf3, 4096, 3, XBLOCK
            =4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_10
        buf4 = empty_strided_cuda((64, 64, 3, 1), (192, 1, 64, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_16, buf4, 4096, 3, XBLOCK
            =4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_16
        buf5 = empty_strided_cuda((64, 64, 1, 3), (192, 1, 192, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_18, buf5, 4096, 3, XBLOCK
            =4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_18
        buf6 = empty_strided_cuda((64, 64, 3, 1), (192, 1, 64, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_24, buf6, 4096, 3, XBLOCK
            =4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_24
        buf7 = empty_strided_cuda((64, 64, 1, 3), (192, 1, 192, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_26, buf7, 4096, 3, XBLOCK
            =4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_26
        buf8 = empty_strided_cuda((64, 64, 3, 1), (192, 1, 64, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_32, buf8, 4096, 3, XBLOCK
            =4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_32
        buf9 = empty_strided_cuda((64, 64, 1, 3), (192, 1, 192, 64), torch.
            float32)
        triton_poi_fused_2[grid(4096, 3)](primals_34, buf9, 4096, 3, XBLOCK
            =4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_34
        buf10 = empty_strided_cuda((64, 32, 3, 3), (288, 1, 96, 32), torch.
            float32)
        triton_poi_fused_3[grid(2048, 9)](primals_40, buf10, 2048, 9,
            XBLOCK=16, YBLOCK=64, num_warps=4, num_stages=1)
        del primals_40
        buf11 = empty_strided_cuda((32, 32, 3, 1), (96, 1, 32, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_46, buf11, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_46
        buf12 = empty_strided_cuda((32, 32, 1, 3), (96, 1, 96, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_48, buf12, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_48
        buf13 = empty_strided_cuda((32, 32, 3, 1), (96, 1, 32, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_54, buf13, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_54
        buf14 = empty_strided_cuda((32, 32, 1, 3), (96, 1, 96, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_56, buf14, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_56
        buf15 = empty_strided_cuda((32, 32, 3, 1), (96, 1, 32, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_62, buf15, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_62
        buf16 = empty_strided_cuda((32, 32, 1, 3), (96, 1, 96, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_64, buf16, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_64
        buf17 = empty_strided_cuda((32, 32, 3, 1), (96, 1, 32, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_70, buf17, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_70
        buf18 = empty_strided_cuda((32, 32, 1, 3), (96, 1, 96, 32), torch.
            float32)
        triton_poi_fused_4[grid(1024, 3)](primals_72, buf18, 1024, 3,
            XBLOCK=4, YBLOCK=256, num_warps=4, num_stages=1)
        del primals_72
        buf19 = empty_strided_cuda((32, 4, 2, 2), (16, 1, 8, 4), torch.float32)
        triton_poi_fused_5[grid(128, 4)](primals_78, buf19, 128, 4, XBLOCK=
            4, YBLOCK=32, num_warps=4, num_stages=1)
        del primals_78
        buf20 = extern_kernels.convolution(buf0, buf1, stride=(2, 2),
            padding=(1, 1), dilation=(1, 1), transposed=True,
            output_padding=(1, 1), groups=1, bias=None)
        assert_size_stride(buf20, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf21 = buf20
        del buf20
        buf22 = empty_strided_cuda((4, 64, 8, 8), (4096, 1, 512, 64), torch
            .float32)
        triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_6[
            grid(16384)](buf21, primals_3, primals_4, primals_5, primals_6,
            primals_7, buf22, 16384, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_3
        del primals_7
        buf23 = extern_kernels.convolution(buf22, buf2, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf23, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf24 = buf23
        del buf23
        triton_poi_fused_convolution_relu_7[grid(16384)](buf24, primals_9, 
            16384, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_9
        buf25 = extern_kernels.convolution(buf24, buf3, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf25, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf26 = buf25
        del buf25
        buf27 = empty_strided_cuda((4, 64, 8, 8), (4096, 1, 512, 64), torch
            .float32)
        triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_6[
            grid(16384)](buf26, primals_11, primals_12, primals_13,
            primals_14, primals_15, buf27, 16384, XBLOCK=256, num_warps=4,
            num_stages=1)
        del primals_11
        del primals_15
        buf28 = extern_kernels.convolution(buf27, buf4, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf28, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf29 = buf28
        del buf28
        triton_poi_fused_convolution_relu_7[grid(16384)](buf29, primals_17,
            16384, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_17
        buf30 = extern_kernels.convolution(buf29, buf5, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf30, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf31 = buf30
        del buf30
        buf32 = empty_strided_cuda((4, 64, 8, 8), (4096, 1, 512, 64), torch
            .float32)
        triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_8[
            grid(16384)](buf31, primals_19, primals_20, primals_21,
            primals_22, primals_23, buf22, buf32, 16384, XBLOCK=256,
            num_warps=4, num_stages=1)
        del primals_19
        del primals_23
        buf33 = extern_kernels.convolution(buf32, buf6, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf33, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf34 = buf33
        del buf33
        triton_poi_fused_convolution_relu_7[grid(16384)](buf34, primals_25,
            16384, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_25
        buf35 = extern_kernels.convolution(buf34, buf7, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf35, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf36 = buf35
        del buf35
        buf37 = empty_strided_cuda((4, 64, 8, 8), (4096, 1, 512, 64), torch
            .float32)
        triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_6[
            grid(16384)](buf36, primals_27, primals_28, primals_29,
            primals_30, primals_31, buf37, 16384, XBLOCK=256, num_warps=4,
            num_stages=1)
        del primals_27
        del primals_31
        buf38 = extern_kernels.convolution(buf37, buf8, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf38, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf39 = buf38
        del buf38
        triton_poi_fused_convolution_relu_7[grid(16384)](buf39, primals_33,
            16384, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_33
        buf40 = extern_kernels.convolution(buf39, buf9, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf40, (4, 64, 8, 8), (4096, 1, 512, 64))
        buf41 = buf40
        del buf40
        buf42 = empty_strided_cuda((4, 64, 8, 8), (4096, 64, 8, 1), torch.
            float32)
        triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_9[
            grid(256, 64)](buf41, primals_35, primals_36, primals_37,
            primals_38, primals_39, buf32, buf42, 256, 64, XBLOCK=64,
            YBLOCK=4, num_warps=4, num_stages=1)
        del primals_35
        del primals_39
        buf43 = empty_strided_cuda((4, 64, 8, 8), (4096, 1, 512, 64), torch
            .float32)
        triton_poi_fused_convolution_10[grid(256, 64)](buf42, buf43, 256, 
            64, XBLOCK=32, YBLOCK=32, num_warps=4, num_stages=1)
        buf44 = extern_kernels.convolution(buf43, buf10, stride=(2, 2),
            padding=(1, 1), dilation=(1, 1), transposed=True,
            output_padding=(1, 1), groups=1, bias=None)
        assert_size_stride(buf44, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf45 = buf44
        del buf44
        buf46 = empty_strided_cuda((4, 32, 16, 16), (8192, 1, 512, 32),
            torch.float32)
        triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_11[
            grid(32768)](buf45, primals_41, primals_42, primals_43,
            primals_44, primals_45, buf46, 32768, XBLOCK=256, num_warps=4,
            num_stages=1)
        del primals_41
        del primals_45
        buf47 = extern_kernels.convolution(buf46, buf11, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf47, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf48 = buf47
        del buf47
        triton_poi_fused_convolution_relu_12[grid(32768)](buf48, primals_47,
            32768, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_47
        buf49 = extern_kernels.convolution(buf48, buf12, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf49, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf50 = buf49
        del buf49
        buf51 = empty_strided_cuda((4, 32, 16, 16), (8192, 1, 512, 32),
            torch.float32)
        triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_11[
            grid(32768)](buf50, primals_49, primals_50, primals_51,
            primals_52, primals_53, buf51, 32768, XBLOCK=256, num_warps=4,
            num_stages=1)
        del primals_49
        del primals_53
        buf52 = extern_kernels.convolution(buf51, buf13, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf52, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf53 = buf52
        del buf52
        triton_poi_fused_convolution_relu_12[grid(32768)](buf53, primals_55,
            32768, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_55
        buf54 = extern_kernels.convolution(buf53, buf14, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf54, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf55 = buf54
        del buf54
        buf56 = empty_strided_cuda((4, 32, 16, 16), (8192, 1, 512, 32),
            torch.float32)
        triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_13[
            grid(32768)](buf55, primals_57, primals_58, primals_59,
            primals_60, primals_61, buf46, buf56, 32768, XBLOCK=256,
            num_warps=4, num_stages=1)
        del primals_57
        del primals_61
        buf57 = extern_kernels.convolution(buf56, buf15, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf57, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf58 = buf57
        del buf57
        triton_poi_fused_convolution_relu_12[grid(32768)](buf58, primals_63,
            32768, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_63
        buf59 = extern_kernels.convolution(buf58, buf16, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf59, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf60 = buf59
        del buf59
        buf61 = empty_strided_cuda((4, 32, 16, 16), (8192, 1, 512, 32),
            torch.float32)
        triton_poi_fused__native_batch_norm_legit_no_training_convolution_relu_11[
            grid(32768)](buf60, primals_65, primals_66, primals_67,
            primals_68, primals_69, buf61, 32768, XBLOCK=256, num_warps=4,
            num_stages=1)
        del primals_65
        del primals_69
        buf62 = extern_kernels.convolution(buf61, buf17, stride=(1, 1),
            padding=(1, 0), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf62, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf63 = buf62
        del buf62
        triton_poi_fused_convolution_relu_12[grid(32768)](buf63, primals_71,
            32768, XBLOCK=256, num_warps=4, num_stages=1)
        del primals_71
        buf64 = extern_kernels.convolution(buf63, buf18, stride=(1, 1),
            padding=(0, 1), dilation=(1, 1), transposed=False,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf64, (4, 32, 16, 16), (8192, 1, 512, 32))
        buf65 = buf64
        del buf64
        buf66 = empty_strided_cuda((4, 32, 16, 16), (8192, 256, 16, 1),
            torch.float32)
        triton_poi_fused__native_batch_norm_legit_no_training_add_convolution_relu_14[
            grid(1024, 32)](buf65, primals_73, primals_74, primals_75,
            primals_76, primals_77, buf56, buf66, 1024, 32, XBLOCK=32,
            YBLOCK=8, num_warps=4, num_stages=1)
        del primals_73
        del primals_77
        buf67 = empty_strided_cuda((4, 32, 16, 16), (8192, 1, 512, 32),
            torch.float32)
        triton_poi_fused_convolution_15[grid(128, 256)](buf66, buf67, 128, 
            256, XBLOCK=32, YBLOCK=32, num_warps=4, num_stages=1)
        buf68 = extern_kernels.convolution(buf67, buf19, stride=(2, 2),
            padding=(0, 0), dilation=(1, 1), transposed=True,
            output_padding=(0, 0), groups=1, bias=None)
        assert_size_stride(buf68, (4, 4, 32, 32), (4096, 1, 128, 4))
        del buf67
        buf69 = reinterpret_tensor(buf43, (4, 4, 32, 32), (4096, 1024, 32, 
            1), 0)
        del buf43
        triton_poi_fused_convolution_16[grid(16, 1024)](buf68, primals_79,
            buf69, 16, 1024, XBLOCK=256, YBLOCK=1, num_warps=4, num_stages=1)
        del buf68
        del primals_79
    return (buf69, buf66, buf42, buf0, buf1, primals_4, primals_5,
        primals_6, buf2, buf3, primals_12, primals_13, primals_14, buf4,
        buf5, primals_20, primals_21, primals_22, buf6, buf7, primals_28,
        primals_29, primals_30, buf8, buf9, primals_36, primals_37,
        primals_38, buf10, primals_42, primals_43, primals_44, buf11, buf12,
        primals_50, primals_51, primals_52, buf13, buf14, primals_58,
        primals_59, primals_60, buf15, buf16, primals_66, primals_67,
        primals_68, buf17, buf18, primals_74, primals_75, primals_76, buf19,
        buf21, buf22, buf24, buf26, buf27, buf29, buf31, buf32, buf34,
        buf36, buf37, buf39, buf41, buf42, buf45, buf46, buf48, buf50,
        buf51, buf53, buf55, buf56, buf58, buf60, buf61, buf63, buf65, buf66)


class non_bottleneck_1d(nn.Module):

    def __init__(self, chann, dropprob, dilated):
        super().__init__()
        self.conv3x1_1 = nn.Conv2d(chann, chann, (3, 1), stride=1, padding=
            (1, 0), bias=True)
        self.conv1x3_1 = nn.Conv2d(chann, chann, (1, 3), stride=1, padding=
            (0, 1), bias=True)
        self.bn1 = nn.BatchNorm2d(chann, eps=0.001)
        self.conv3x1_2 = nn.Conv2d(chann, chann, (3, 1), stride=1, padding=
            (1 * dilated, 0), bias=True, dilation=(dilated, 1))
        self.conv1x3_2 = nn.Conv2d(chann, chann, (1, 3), stride=1, padding=
            (0, 1 * dilated), bias=True, dilation=(1, dilated))
        self.bn2 = nn.BatchNorm2d(chann, eps=0.001)
        self.dropout = nn.Dropout2d(dropprob)
        self.bn1_s = self.bn1
        self.bn1_t = nn.BatchNorm2d(chann, eps=0.001)
        self.bn2_s = self.bn2
        self.bn2_t = nn.BatchNorm2d(chann, eps=0.001)

    def forward(self, input):
        output = self.conv3x1_1(input)
        output = F.relu(output)
        output = self.conv1x3_1(output)
        output = self.bn1(output)
        output = F.relu(output)
        output = self.conv3x1_2(output)
        output = F.relu(output)
        output = self.conv1x3_2(output)
        output = self.bn2(output)
        if self.dropout.p != 0:
            output = self.dropout(output)
        return F.relu(output + input)


class UpsamplerBlock(nn.Module):

    def __init__(self, ninput, noutput):
        super().__init__()
        self.conv = nn.ConvTranspose2d(ninput, noutput, 3, stride=2,
            padding=1, output_padding=1, bias=True)
        self.bn = nn.BatchNorm2d(noutput, eps=0.001)
        self.bn_s = self.bn
        self.bn_t = nn.BatchNorm2d(noutput, eps=0.001)

    def forward(self, input):
        output = self.conv(input)
        output = self.bn(output)
        return F.relu(output)


class DecoderNew(nn.Module):

    def __init__(self, num_classes):
        super().__init__()
        self.layer1 = UpsamplerBlock(128, 64)
        self.layer2 = non_bottleneck_1d(64, 0, 1)
        self.layer3 = non_bottleneck_1d(64, 0, 1)
        self.layer4 = UpsamplerBlock(64, 32)
        self.layer5 = non_bottleneck_1d(32, 0, 1)
        self.layer6 = non_bottleneck_1d(32, 0, 1)
        self.output_conv = nn.ConvTranspose2d(32, num_classes, 2, stride=2,
            padding=0, output_padding=0, bias=True)

    def forward(self, input_0):
        primals_2 = self.layer1.conv.weight
        primals_3 = self.layer1.conv.bias
        primals_4 = self.layer1.bn.weight
        primals_5 = self.layer1.bn.bias
        primals_6 = self.layer1.bn_t.weight
        primals_7 = self.layer1.bn_t.bias
        primals_8 = self.layer2.conv3x1_1.weight
        primals_9 = self.layer2.conv3x1_1.bias
        primals_10 = self.layer2.conv1x3_1.weight
        primals_11 = self.layer2.conv1x3_1.bias
        primals_12 = self.layer2.bn1.weight
        primals_13 = self.layer2.bn1.bias
        primals_16 = self.layer2.conv3x1_2.weight
        primals_14 = self.layer2.conv3x1_2.bias
        primals_18 = self.layer2.conv1x3_2.weight
        primals_15 = self.layer2.conv1x3_2.bias
        primals_17 = self.layer2.bn2.weight
        primals_19 = self.layer2.bn2.bias
        primals_20 = self.layer2.bn1_t.weight
        primals_21 = self.layer2.bn1_t.bias
        primals_22 = self.layer2.bn2_t.weight
        primals_23 = self.layer2.bn2_t.bias
        primals_24 = self.layer3.conv3x1_1.weight
        primals_25 = self.layer3.conv3x1_1.bias
        primals_26 = self.layer3.conv1x3_1.weight
        primals_27 = self.layer3.conv1x3_1.bias
        primals_28 = self.layer3.bn1.weight
        primals_29 = self.layer3.bn1.bias
        primals_32 = self.layer3.conv3x1_2.weight
        primals_30 = self.layer3.conv3x1_2.bias
        primals_34 = self.layer3.conv1x3_2.weight
        primals_31 = self.layer3.conv1x3_2.bias
        primals_33 = self.layer3.bn2.weight
        primals_35 = self.layer3.bn2.bias
        primals_36 = self.layer3.bn1_t.weight
        primals_37 = self.layer3.bn1_t.bias
        primals_38 = self.layer3.bn2_t.weight
        primals_39 = self.layer3.bn2_t.bias
        primals_40 = self.layer4.conv.weight
        primals_41 = self.layer4.conv.bias
        primals_42 = self.layer4.bn.weight
        primals_43 = self.layer4.bn.bias
        primals_44 = self.layer4.bn_t.weight
        primals_45 = self.layer4.bn_t.bias
        primals_46 = self.layer5.conv3x1_1.weight
        primals_47 = self.layer5.conv3x1_1.bias
        primals_48 = self.layer5.conv1x3_1.weight
        primals_49 = self.layer5.conv1x3_1.bias
        primals_50 = self.layer5.bn1.weight
        primals_51 = self.layer5.bn1.bias
        primals_54 = self.layer5.conv3x1_2.weight
        primals_52 = self.layer5.conv3x1_2.bias
        primals_56 = self.layer5.conv1x3_2.weight
        primals_53 = self.layer5.conv1x3_2.bias
        primals_55 = self.layer5.bn2.weight
        primals_57 = self.layer5.bn2.bias
        primals_58 = self.layer5.bn1_t.weight
        primals_59 = self.layer5.bn1_t.bias
        primals_60 = self.layer5.bn2_t.weight
        primals_61 = self.layer5.bn2_t.bias
        primals_62 = self.layer6.conv3x1_1.weight
        primals_63 = self.layer6.conv3x1_1.bias
        primals_64 = self.layer6.conv1x3_1.weight
        primals_65 = self.layer6.conv1x3_1.bias
        primals_66 = self.layer6.bn1.weight
        primals_67 = self.layer6.bn1.bias
        primals_70 = self.layer6.conv3x1_2.weight
        primals_68 = self.layer6.conv3x1_2.bias
        primals_72 = self.layer6.conv1x3_2.weight
        primals_69 = self.layer6.conv1x3_2.bias
        primals_71 = self.layer6.bn2.weight
        primals_73 = self.layer6.bn2.bias
        primals_74 = self.layer6.bn1_t.weight
        primals_75 = self.layer6.bn1_t.bias
        primals_76 = self.layer6.bn2_t.weight
        primals_77 = self.layer6.bn2_t.bias
        primals_78 = self.output_conv.weight
        primals_79 = self.output_conv.bias
        primals_1 = input_0
        output = call([primals_1, primals_2, primals_3, primals_4,
            primals_5, primals_6, primals_7, primals_8, primals_9,
            primals_10, primals_11, primals_12, primals_13, primals_14,
            primals_15, primals_16, primals_17, primals_18, primals_19,
            primals_20, primals_21, primals_22, primals_23, primals_24,
            primals_25, primals_26, primals_27, primals_28, primals_29,
            primals_30, primals_31, primals_32, primals_33, primals_34,
            primals_35, primals_36, primals_37, primals_38, primals_39,
            primals_40, primals_41, primals_42, primals_43, primals_44,
            primals_45, primals_46, primals_47, primals_48, primals_49,
            primals_50, primals_51, primals_52, primals_53, primals_54,
            primals_55, primals_56, primals_57, primals_58, primals_59,
            primals_60, primals_61, primals_62, primals_63, primals_64,
            primals_65, primals_66, primals_67, primals_68, primals_69,
            primals_70, primals_71, primals_72, primals_73, primals_74,
            primals_75, primals_76, primals_77, primals_78, primals_79])
        return output[0], output[1], output[2]


Measured latency_ms: 0.016923