<
   ir_version: 10,
   opset_import: ["" : 18]
>
image_classifier (float[?,1,1,8,8] image, float[4] calibration) => (float[?,1,3] probabilities)
   <float[4,1,3,3] kernel =  {0.060943417,-0.20799682,0.15009025,0.18811294,-0.39020702,-0.26043588,0.02556808,-0.06324852,-0.0033602316,-0.17060879,0.1758796,0.15555838,0.013206139,0.22544825,0.093501866,-0.17185849,0.07375015,-0.19177653,0.17569005,-0.009985182,-0.03697247,-0.13618591,0.24450827,-0.030905897,-0.08566557,-0.07042671,0.10646184,0.07308881,0.08254652,0.0861642,0.42832953,-0.081283,-0.102448545,-0.16275455,0.12319589,0.22579446}, float[4,3] projection =  {-0.11394746,-0.8401565,-0.8244812,0.6505928,0.7432542,0.54315424,-0.6655097,0.23216133,0.11668581,0.21868859,0.8714288,0.22359554}, float[3] bias =  {-0.2,0.1,0.3}, float[4,1,3,3] kernel, float[4,3] projection, float[3] bias, float[?,1,4,8,8] convolution, float[?,1,4,8,8] activation, float[?,1,4,1,1] pooled, float[?,1,4] features, float[1,1,4] val_31, float[?,1,4] calibrated, float[1,1,3] val_34, float[?,1,3] logits>
{
   [node_Shape_0] val_0 = Shape (image)
   [node_Constant_1] val_1 = Constant <value: tensor = int64[1] {1}> ()
   [node_Gather_2] val_2 = Gather <axis: int = 0> (val_0, val_1)
   [node_Shape_3] val_3 = Shape (image)
   [node_Constant_4] val_4 = Constant <value: tensor = int64[1] {0}> ()
   [node_Gather_5] val_5 = Gather <axis: int = 0> (val_3, val_4)
   [node_Mul_6] val_6 = Mul (val_5, val_2)
   [node_Shape_7] val_7 = Shape <start: int = 2> (image)
   [node_Concat_8] val_8 = Concat <axis: int = 0> (val_6, val_7)
   [node_Reshape_9] val_9 = Reshape <allowzero: int = 1> (image, val_8)
   [node_Conv_10] val_10 = Conv <pads: ints = [1, 1, 1, 1]> (val_9, kernel)
   [node_Shape_11] val_11 = Shape <start: int = 1> (val_10)
   [node_Concat_12] val_12 = Concat <axis: int = 0> (val_5, val_2, val_11)
   [node_Conv_0] convolution = Reshape <allowzero: int = 1> (val_10, val_12)
   [node_Relu_1] activation = Relu (convolution)
   [node_Shape_13] val_13 = Shape (activation)
   [node_Constant_14] val_14 = Constant <value: tensor = int64[1] {1}> ()
   [node_Gather_15] val_15 = Gather <axis: int = 0> (val_13, val_14)
   [node_Mul_16] val_16 = Mul (val_5, val_15)
   [node_Shape_17] val_17 = Shape <start: int = 2> (activation)
   [node_Concat_18] val_18 = Concat <axis: int = 0> (val_16, val_17)
   [node_Reshape_19] val_19 = Reshape <allowzero: int = 1> (activation, val_18)
   [node_GlobalAveragePool_20] val_20 = GlobalAveragePool (val_19)
   [node_Shape_21] val_21 = Shape <start: int = 1> (val_20)
   [node_Concat_22] val_22 = Concat <axis: int = 0> (val_5, val_15, val_21)
   [node_GlobalAveragePool_2] pooled = Reshape <allowzero: int = 1> (val_20, val_22)
   [node_Shape_23] val_23 = Shape <start: int = 1, end: int = 2> (pooled)
   [node_Constant_24] val_24 = Constant <value: tensor = int64[1] {0}> ()
   [node_ReduceProd_25] val_25 = ReduceProd <keepdims: int = 1> (val_23, val_24)
   [node_Shape_26] val_26 = Shape <start: int = 2, end: int = 5> (pooled)
   [node_Constant_27] val_27 = Constant <value: tensor = int64[1] {0}> ()
   [node_ReduceProd_28] val_28 = ReduceProd <keepdims: int = 1> (val_26, val_27)
   [node_Concat_29] val_29 = Concat <axis: int = 0> (val_5, val_25, val_28)
   [node_Flatten_3] features = Reshape <allowzero: int = 1> (pooled, val_29)
   [node_Constant_30] val_30 = Constant <value: tensor = int64[2] {0,1}> ()
   [node_Unsqueeze_31] val_31 = Unsqueeze (calibration, val_30)
   [node_Add_4] calibrated = Add (features, val_31)
   [node_MatMul_32] val_32 = MatMul (calibrated, projection)
   [node_Constant_33] val_33 = Constant <value: tensor = int64[2] {0,1}> ()
   [node_Unsqueeze_34] val_34 = Unsqueeze (bias, val_33)
   [node_Gemm_5] logits = Add (val_32, val_34)
   [node_Softmax_6] probabilities = Softmax <axis: int = 2> (logits)
}
