{
  "version": 3,
  "operator_codes": [
    {
      "deprecated_builtin_code": 9,
      "version": 4,
      "builtin_code": "FULLY_CONNECTED"
    }
  ],
  "subgraphs": [
    {
      "tensors": [
        {
          "shape": [
            batch_size,
            in_ch
          ],
          "type": "INT8",
          "buffer": 0,
          "name" : "tensor_input",
          "quantization": {
            "scale": [
              input_scale
            ],
            "zero_point": [
              input_zp
            ],
            "quantized_dimension": 0
          },
          "is_variable": false,
          "has_rank": true
        },
        {
          "shape": [
            out_ch,
            in_ch
          ],
          "type": w_type,
          "buffer": 1,
          "name" : "tensor_weight",
          "quantization": {
            "scale": [
              w_scale
            ],
            "zero_point": [
              w_zp
            ],
            "details_type": "NONE",
            "quantized_dimension": 0
          },
          "is_variable": false,
          "has_rank": true
        },
        {
          "shape": [
            batch_size,
            out_ch
          ],
          "type": "INT8",
          "buffer": 2,
          "name": "tensor_output",
          "quantization": {
            "scale": [
              output_scale
            ],
            "zero_point": [
              output_zp
            ],
            "details_type": "NONE",
            "quantized_dimension": 0
          },
          "is_variable": false
        }
      ],
      "inputs": [
        0
      ],
      "outputs": [
        2
      ],
      "operators": [
        {
          "opcode_index": 0,
          "inputs": [
            0,
            1
          ],
          "outputs": [
            2
          ],
          "builtin_options_type": "FullyConnectedOptions",
          "builtin_options": {
            "fused_activation_function": "NONE",
            "weights_format": "DEFAULT",
            "keep_num_dims": false,
            "asymmetric_quantize_inputs": false
          },
          "custom_options_format": "FLEXBUFFERS"
        }
      ]
    }
  ],
  "buffers": [
    {},
    {
        "data": [
            input_weights
        ]
    },
    {}
  ]
}