EncoderDecoder(
  10.59 M, 77.422% Params, 11.651 GFLOPs, 100.000% FLOPs, 
  (backbone): MixVisionTransformer(
    10.063 M, 73.567% Params, 6.798 GFLOPs, 58.349% FLOPs, 
    (layers): ModuleList(
      10.063 M, 73.567% Params, 6.798 GFLOPs, 58.349% FLOPs, 
      (0): ModuleList(
        0.606 M, 4.432% Params, 1.47 GFLOPs, 12.619% FLOPs, 
        (0): PatchEmbed(
          0.01 M, 0.070% Params, 0.157 GFLOPs, 1.350% FLOPs, 
          (projection): Conv2d(0.009 M, 0.069% Params, 0.155 GFLOPs, 1.332% FLOPs, 3, 64, kernel_size=(7, 7), stride=(4, 4), padding=(3, 3))
          (norm): LayerNorm(0.0 M, 0.001% Params, 0.002 GFLOPs, 0.018% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
        )
        (1): ModuleList(
          0.596 M, 4.361% Params, 1.311 GFLOPs, 11.251% FLOPs, 
          (0): TransformerEncoderLayer(
            0.298 M, 2.180% Params, 0.655 GFLOPs, 5.625% FLOPs, 
            (norm1): LayerNorm(0.0 M, 0.001% Params, 0.002 GFLOPs, 0.018% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.262 M, 1.918% Params, 0.067 GFLOPs, 0.576% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=64, out_features=64, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (sr): Conv2d(0.262 M, 1.917% Params, 0.067 GFLOPs, 0.576% FLOPs, 64, 64, kernel_size=(8, 8), stride=(8, 8))
              (norm): LayerNorm(0.0 M, 0.001% Params, 0.0 GFLOPs, 0.000% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
            )
            (norm2): LayerNorm(0.0 M, 0.001% Params, 0.002 GFLOPs, 0.018% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              0.036 M, 0.261% Params, 0.584 GFLOPs, 5.013% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                0.036 M, 0.261% Params, 0.584 GFLOPs, 5.013% FLOPs, 
                (0): Conv2d(0.017 M, 0.122% Params, 0.273 GFLOPs, 2.340% FLOPs, 64, 256, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.003 M, 0.019% Params, 0.042 GFLOPs, 0.360% FLOPs, 256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=256)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(0.016 M, 0.120% Params, 0.269 GFLOPs, 2.313% FLOPs, 256, 64, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
          (1): TransformerEncoderLayer(
            0.298 M, 2.180% Params, 0.655 GFLOPs, 5.625% FLOPs, 
            (norm1): LayerNorm(0.0 M, 0.001% Params, 0.002 GFLOPs, 0.018% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.262 M, 1.918% Params, 0.067 GFLOPs, 0.576% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=64, out_features=64, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (sr): Conv2d(0.262 M, 1.917% Params, 0.067 GFLOPs, 0.576% FLOPs, 64, 64, kernel_size=(8, 8), stride=(8, 8))
              (norm): LayerNorm(0.0 M, 0.001% Params, 0.0 GFLOPs, 0.000% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
            )
            (norm2): LayerNorm(0.0 M, 0.001% Params, 0.002 GFLOPs, 0.018% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              0.036 M, 0.261% Params, 0.584 GFLOPs, 5.013% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                0.036 M, 0.261% Params, 0.584 GFLOPs, 5.013% FLOPs, 
                (0): Conv2d(0.017 M, 0.122% Params, 0.273 GFLOPs, 2.340% FLOPs, 64, 256, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.003 M, 0.019% Params, 0.042 GFLOPs, 0.360% FLOPs, 256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=256)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(0.016 M, 0.120% Params, 0.269 GFLOPs, 2.313% FLOPs, 256, 64, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
        )
        (2): LayerNorm(0.0 M, 0.001% Params, 0.002 GFLOPs, 0.018% FLOPs, (64,), eps=1e-06, elementwise_affine=True)
      )
      (1): ModuleList(
        0.874 M, 6.390% Params, 1.564 GFLOPs, 13.425% FLOPs, 
        (0): PatchEmbed(
          0.074 M, 0.542% Params, 0.304 GFLOPs, 2.605% FLOPs, 
          (projection): Conv2d(0.074 M, 0.540% Params, 0.303 GFLOPs, 2.596% FLOPs, 64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))
          (norm): LayerNorm(0.0 M, 0.002% Params, 0.001 GFLOPs, 0.009% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
        )
        (1): ModuleList(
          0.8 M, 5.847% Params, 1.26 GFLOPs, 10.811% FLOPs, 
          (0): TransformerEncoderLayer(
            0.4 M, 2.923% Params, 0.63 GFLOPs, 5.405% FLOPs, 
            (norm1): LayerNorm(0.0 M, 0.002% Params, 0.001 GFLOPs, 0.009% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.263 M, 1.919% Params, 0.067 GFLOPs, 0.577% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=128, out_features=128, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (sr): Conv2d(0.262 M, 1.917% Params, 0.067 GFLOPs, 0.576% FLOPs, 128, 128, kernel_size=(4, 4), stride=(4, 4))
              (norm): LayerNorm(0.0 M, 0.002% Params, 0.0 GFLOPs, 0.001% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
            )
            (norm2): LayerNorm(0.0 M, 0.002% Params, 0.001 GFLOPs, 0.009% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              0.137 M, 1.000% Params, 0.56 GFLOPs, 4.810% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                0.137 M, 1.000% Params, 0.56 GFLOPs, 4.810% FLOPs, 
                (0): Conv2d(0.066 M, 0.483% Params, 0.271 GFLOPs, 2.322% FLOPs, 128, 512, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.005 M, 0.037% Params, 0.021 GFLOPs, 0.180% FLOPs, 512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=512)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(0.066 M, 0.480% Params, 0.269 GFLOPs, 2.308% FLOPs, 512, 128, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
          (1): TransformerEncoderLayer(
            0.4 M, 2.923% Params, 0.63 GFLOPs, 5.405% FLOPs, 
            (norm1): LayerNorm(0.0 M, 0.002% Params, 0.001 GFLOPs, 0.009% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.263 M, 1.919% Params, 0.067 GFLOPs, 0.577% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=128, out_features=128, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (sr): Conv2d(0.262 M, 1.917% Params, 0.067 GFLOPs, 0.576% FLOPs, 128, 128, kernel_size=(4, 4), stride=(4, 4))
              (norm): LayerNorm(0.0 M, 0.002% Params, 0.0 GFLOPs, 0.001% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
            )
            (norm2): LayerNorm(0.0 M, 0.002% Params, 0.001 GFLOPs, 0.009% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              0.137 M, 1.000% Params, 0.56 GFLOPs, 4.810% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                0.137 M, 1.000% Params, 0.56 GFLOPs, 4.810% FLOPs, 
                (0): Conv2d(0.066 M, 0.483% Params, 0.271 GFLOPs, 2.322% FLOPs, 128, 512, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.005 M, 0.037% Params, 0.021 GFLOPs, 0.180% FLOPs, 512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=512)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(0.066 M, 0.480% Params, 0.269 GFLOPs, 2.308% FLOPs, 512, 128, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
        )
        (2): LayerNorm(0.0 M, 0.002% Params, 0.001 GFLOPs, 0.009% FLOPs, (128,), eps=1e-06, elementwise_affine=True)
      )
      (2): ModuleList(
        2.861 M, 20.916% Params, 2.299 GFLOPs, 19.734% FLOPs, 
        (0): PatchEmbed(
          0.37 M, 2.702% Params, 0.378 GFLOPs, 3.248% FLOPs, 
          (projection): Conv2d(0.369 M, 2.697% Params, 0.378 GFLOPs, 3.243% FLOPs, 128, 320, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))
          (norm): LayerNorm(0.001 M, 0.005% Params, 0.001 GFLOPs, 0.006% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
        )
        (1): ModuleList(
          2.491 M, 18.210% Params, 1.92 GFLOPs, 16.480% FLOPs, 
          (0): TransformerEncoderLayer(
            1.245 M, 9.105% Params, 0.96 GFLOPs, 8.240% FLOPs, 
            (norm1): LayerNorm(0.001 M, 0.005% Params, 0.001 GFLOPs, 0.006% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.411 M, 3.001% Params, 0.105 GFLOPs, 0.902% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=320, out_features=320, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (sr): Conv2d(0.41 M, 2.997% Params, 0.105 GFLOPs, 0.901% FLOPs, 320, 320, kernel_size=(2, 2), stride=(2, 2))
              (norm): LayerNorm(0.001 M, 0.005% Params, 0.0 GFLOPs, 0.001% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
            )
            (norm2): LayerNorm(0.001 M, 0.005% Params, 0.001 GFLOPs, 0.006% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              0.834 M, 6.094% Params, 0.854 GFLOPs, 7.326% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                0.834 M, 6.094% Params, 0.854 GFLOPs, 7.326% FLOPs, 
                (0): Conv2d(0.411 M, 3.004% Params, 0.421 GFLOPs, 3.611% FLOPs, 320, 1280, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.013 M, 0.094% Params, 0.013 GFLOPs, 0.112% FLOPs, 1280, 1280, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=1280)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(0.41 M, 2.997% Params, 0.42 GFLOPs, 3.603% FLOPs, 1280, 320, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
          (1): TransformerEncoderLayer(
            1.245 M, 9.105% Params, 0.96 GFLOPs, 8.240% FLOPs, 
            (norm1): LayerNorm(0.001 M, 0.005% Params, 0.001 GFLOPs, 0.006% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.411 M, 3.001% Params, 0.105 GFLOPs, 0.902% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=320, out_features=320, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (sr): Conv2d(0.41 M, 2.997% Params, 0.105 GFLOPs, 0.901% FLOPs, 320, 320, kernel_size=(2, 2), stride=(2, 2))
              (norm): LayerNorm(0.001 M, 0.005% Params, 0.0 GFLOPs, 0.001% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
            )
            (norm2): LayerNorm(0.001 M, 0.005% Params, 0.001 GFLOPs, 0.006% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              0.834 M, 6.094% Params, 0.854 GFLOPs, 7.326% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                0.834 M, 6.094% Params, 0.854 GFLOPs, 7.326% FLOPs, 
                (0): Conv2d(0.411 M, 3.004% Params, 0.421 GFLOPs, 3.611% FLOPs, 320, 1280, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.013 M, 0.094% Params, 0.013 GFLOPs, 0.112% FLOPs, 1280, 1280, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=1280)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(0.41 M, 2.997% Params, 0.42 GFLOPs, 3.603% FLOPs, 1280, 320, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
        )
        (2): LayerNorm(0.001 M, 0.005% Params, 0.001 GFLOPs, 0.006% FLOPs, (320,), eps=1e-06, elementwise_affine=True)
      )
      (3): ModuleList(
        5.722 M, 41.828% Params, 1.465 GFLOPs, 12.572% FLOPs, 
        (0): PatchEmbed(
          1.476 M, 10.791% Params, 0.378 GFLOPs, 3.243% FLOPs, 
          (projection): Conv2d(1.475 M, 10.784% Params, 0.378 GFLOPs, 3.241% FLOPs, 320, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))
          (norm): LayerNorm(0.001 M, 0.007% Params, 0.0 GFLOPs, 0.002% FLOPs, (512,), eps=1e-06, elementwise_affine=True)
        )
        (1): ModuleList(
          4.244 M, 31.030% Params, 1.087 GFLOPs, 9.326% FLOPs, 
          (0): TransformerEncoderLayer(
            2.122 M, 15.515% Params, 0.543 GFLOPs, 4.663% FLOPs, 
            (norm1): LayerNorm(0.001 M, 0.007% Params, 0.0 GFLOPs, 0.002% FLOPs, (512,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=512, out_features=512, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
            (norm2): LayerNorm(0.001 M, 0.007% Params, 0.0 GFLOPs, 0.002% FLOPs, (512,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              2.12 M, 15.500% Params, 0.543 GFLOPs, 4.659% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                2.12 M, 15.500% Params, 0.543 GFLOPs, 4.659% FLOPs, 
                (0): Conv2d(1.051 M, 7.681% Params, 0.269 GFLOPs, 2.308% FLOPs, 512, 2048, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.02 M, 0.150% Params, 0.005 GFLOPs, 0.045% FLOPs, 2048, 2048, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=2048)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(1.049 M, 7.669% Params, 0.269 GFLOPs, 2.305% FLOPs, 2048, 512, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
          (1): TransformerEncoderLayer(
            2.122 M, 15.515% Params, 0.543 GFLOPs, 4.663% FLOPs, 
            (norm1): LayerNorm(0.001 M, 0.007% Params, 0.0 GFLOPs, 0.002% FLOPs, (512,), eps=1e-06, elementwise_affine=True)
            (attn): EfficientMultiheadAttention(
              0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
              (attn): MultiheadAttention(
                0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, 
                (out_proj): NonDynamicallyQuantizableLinear(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, in_features=512, out_features=512, bias=True)
              )
              (proj_drop): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
            (norm2): LayerNorm(0.001 M, 0.007% Params, 0.0 GFLOPs, 0.002% FLOPs, (512,), eps=1e-06, elementwise_affine=True)
            (ffn): MixFFN(
              2.12 M, 15.500% Params, 0.543 GFLOPs, 4.659% FLOPs, 
              (activate): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
              (layers): Sequential(
                2.12 M, 15.500% Params, 0.543 GFLOPs, 4.659% FLOPs, 
                (0): Conv2d(1.051 M, 7.681% Params, 0.269 GFLOPs, 2.308% FLOPs, 512, 2048, kernel_size=(1, 1), stride=(1, 1))
                (1): Conv2d(0.02 M, 0.150% Params, 0.005 GFLOPs, 0.045% FLOPs, 2048, 2048, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=2048)
                (2): GELU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
                (3): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
                (4): Conv2d(1.049 M, 7.669% Params, 0.269 GFLOPs, 2.305% FLOPs, 2048, 512, kernel_size=(1, 1), stride=(1, 1))
                (5): Dropout(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.0, inplace=False)
              )
              (dropout_layer): DropPath(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, )
            )
          )
        )
        (2): LayerNorm(0.001 M, 0.007% Params, 0.0 GFLOPs, 0.002% FLOPs, (512,), eps=1e-06, elementwise_affine=True)
      )
    )
  )
  (decode_head): SegformerHead(
    0.527 M, 3.855% Params, 4.853 GFLOPs, 41.651% FLOPs, input_transform=multiple_select, ignore_index=255, align_corners=False
    (loss_decode): CrossEntropyLoss(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, avg_non_ignore=False)
    (conv_seg): Conv2d(0.001 M, 0.004% Params, 0.008 GFLOPs, 0.072% FLOPs, 256, 2, kernel_size=(1, 1), stride=(1, 1))
    (dropout): Dropout2d(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.000% FLOPs, p=0.1, inplace=False)
    (convs): ModuleList(
      0.264 M, 1.931% Params, 0.537 GFLOPs, 4.607% FLOPs, 
      (0): ConvModule(
        0.017 M, 0.124% Params, 0.281 GFLOPs, 2.412% FLOPs, 
        (conv): Conv2d(0.016 M, 0.120% Params, 0.268 GFLOPs, 2.304% FLOPs, 64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)
        (bn): BatchNorm2d(0.001 M, 0.004% Params, 0.008 GFLOPs, 0.072% FLOPs, 256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (activate): ReLU(0.0 M, 0.000% Params, 0.004 GFLOPs, 0.036% FLOPs, inplace=True)
      )
      (1): ConvModule(
        0.033 M, 0.243% Params, 0.137 GFLOPs, 1.179% FLOPs, 
        (conv): Conv2d(0.033 M, 0.240% Params, 0.134 GFLOPs, 1.152% FLOPs, 128, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)
        (bn): BatchNorm2d(0.001 M, 0.004% Params, 0.002 GFLOPs, 0.018% FLOPs, 256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (activate): ReLU(0.0 M, 0.000% Params, 0.001 GFLOPs, 0.009% FLOPs, inplace=True)
      )
      (2): ConvModule(
        0.082 M, 0.603% Params, 0.085 GFLOPs, 0.727% FLOPs, 
        (conv): Conv2d(0.082 M, 0.599% Params, 0.084 GFLOPs, 0.720% FLOPs, 320, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)
        (bn): BatchNorm2d(0.001 M, 0.004% Params, 0.001 GFLOPs, 0.004% FLOPs, 256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (activate): ReLU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.002% FLOPs, inplace=True)
      )
      (3): ConvModule(
        0.132 M, 0.962% Params, 0.034 GFLOPs, 0.290% FLOPs, 
        (conv): Conv2d(0.131 M, 0.958% Params, 0.034 GFLOPs, 0.288% FLOPs, 512, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)
        (bn): BatchNorm2d(0.001 M, 0.004% Params, 0.0 GFLOPs, 0.001% FLOPs, 256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (activate): ReLU(0.0 M, 0.000% Params, 0.0 GFLOPs, 0.001% FLOPs, inplace=True)
      )
    )
    (fusion_conv): ConvModule(
      0.263 M, 1.920% Params, 4.308 GFLOPs, 36.971% FLOPs, 
      (conv): Conv2d(0.262 M, 1.916% Params, 4.295 GFLOPs, 36.863% FLOPs, 1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)
      (bn): BatchNorm2d(0.001 M, 0.004% Params, 0.008 GFLOPs, 0.072% FLOPs, 256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
      (activate): ReLU(0.0 M, 0.000% Params, 0.004 GFLOPs, 0.036% FLOPs, inplace=True)
    )
  )
  init_cfg={'type': 'Normal', 'std': 0.01, 'override': {'name': 'conv_seg'}}
)
==============================
Input shape: (3, 512, 512)
Flops: 11.65 GFLOPs
Params: 13.68 M
==============================
!!!Please be cautious if you use the results in papers. You may need to check if all ops are supported and verify that the flops computation is correct.
