onnx2tf 1.29.3__py3-none-any.whl → 1.29.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
onnx2tf/__init__.py CHANGED
@@ -1,3 +1,3 @@
1
1
  from onnx2tf.onnx2tf import convert, main
2
2
 
3
- __version__ = '1.29.3'
3
+ __version__ = '1.29.4'
@@ -0,0 +1,115 @@
1
+ import random
2
+ random.seed(0)
3
+ import numpy as np
4
+ np.random.seed(0)
5
+ import tensorflow as tf
6
+ import onnx_graphsurgeon as gs
7
+ from onnx2tf.utils.common_functions import (
8
+ get_constant_or_variable,
9
+ print_node_info,
10
+ inverted_operation_enable_disable,
11
+ make_tf_node_info,
12
+ get_replacement_parameter,
13
+ pre_process_transpose,
14
+ post_process_transpose,
15
+ )
16
+
17
+
18
+ @print_node_info
19
+ @inverted_operation_enable_disable
20
+ @get_replacement_parameter
21
+ def make_node(
22
+ *,
23
+ graph_node: gs.Node,
24
+ tf_layers_dict: dict,
25
+ **kwargs: dict,
26
+ ):
27
+ """BitwiseAnd
28
+
29
+ Parameters
30
+ ----------
31
+ graph_node: gs.Node
32
+ graph_surgeon Node
33
+
34
+ tf_layers_dict: dict
35
+ optype, shape, dtype, tensorflow graph
36
+ """
37
+ before_op_output_shape_trans_1 = \
38
+ tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
39
+ before_op_output_shape_trans_2 = \
40
+ tf_layers_dict.get(graph_node.inputs[1].name, {}).get('before_op_output_shape_trans', True)
41
+ before_op_output_shape_trans = \
42
+ before_op_output_shape_trans_1 \
43
+ and before_op_output_shape_trans_2
44
+
45
+ graph_node_input_1 = get_constant_or_variable(
46
+ graph_node.inputs[0],
47
+ before_op_output_shape_trans,
48
+ )
49
+ graph_node_input_2 = get_constant_or_variable(
50
+ graph_node.inputs[1],
51
+ before_op_output_shape_trans,
52
+ )
53
+ graph_node_output: gs.Variable = graph_node.outputs[0]
54
+
55
+ shape = graph_node_output.shape
56
+ dtype = graph_node_output.dtype
57
+
58
+ # Preserving Graph Structure (Dict)
59
+ tf_layers_dict[graph_node_output.name] = {
60
+ 'optype': graph_node.op,
61
+ 'shape': shape,
62
+ 'dtype': dtype,
63
+ }
64
+
65
+ # Generation of TF OP
66
+ input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
67
+ if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
68
+ input_tensor_2 = tf_layers_dict[graph_node_input_2.name]['tf_node'] \
69
+ if isinstance(graph_node_input_2, gs.Variable) else graph_node_input_2
70
+
71
+ # Pre-process transpose
72
+ input_tensor_1 = pre_process_transpose(
73
+ value_before_transpose=input_tensor_1,
74
+ param_target='inputs',
75
+ param_name=graph_node.inputs[0].name,
76
+ **kwargs,
77
+ )
78
+ input_tensor_2 = pre_process_transpose(
79
+ value_before_transpose=input_tensor_2,
80
+ param_target='inputs',
81
+ param_name=graph_node.inputs[1].name,
82
+ **kwargs,
83
+ )
84
+
85
+ tf_op_type = None
86
+ tf_layers_dict[graph_node_output.name]['tf_node'] = \
87
+ tf.bitwise.bitwise_and(
88
+ x=input_tensor_1,
89
+ y=input_tensor_2,
90
+ name=graph_node.name,
91
+ )
92
+ tf_op_type = tf.bitwise.bitwise_and
93
+
94
+ # Post-process transpose
95
+ tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
96
+ value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
97
+ param_target='outputs',
98
+ param_name=graph_node.outputs[0].name,
99
+ **kwargs,
100
+ )
101
+
102
+ # Generation of Debug Info
103
+ tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
104
+ make_tf_node_info(
105
+ node_info={
106
+ 'tf_op_type': tf_op_type,
107
+ 'tf_inputs': {
108
+ 'x': input_tensor_1,
109
+ 'y': input_tensor_2,
110
+ },
111
+ 'tf_outputs': {
112
+ 'output': tf_layers_dict[graph_node_output.name]['tf_node'],
113
+ },
114
+ }
115
+ )
@@ -0,0 +1,98 @@
1
+ import random
2
+ random.seed(0)
3
+ import numpy as np
4
+ np.random.seed(0)
5
+ import tensorflow as tf
6
+ import onnx_graphsurgeon as gs
7
+ from onnx2tf.utils.common_functions import (
8
+ get_constant_or_variable,
9
+ print_node_info,
10
+ inverted_operation_enable_disable,
11
+ make_tf_node_info,
12
+ get_replacement_parameter,
13
+ pre_process_transpose,
14
+ post_process_transpose,
15
+ )
16
+
17
+
18
+ @print_node_info
19
+ @inverted_operation_enable_disable
20
+ @get_replacement_parameter
21
+ def make_node(
22
+ *,
23
+ graph_node: gs.Node,
24
+ tf_layers_dict: dict,
25
+ **kwargs: dict,
26
+ ):
27
+ """BitwiseNot
28
+
29
+ Parameters
30
+ ----------
31
+ graph_node: gs.Node
32
+ graph_surgeon Node
33
+
34
+ tf_layers_dict: dict
35
+ optype, shape, dtype, tensorflow graph
36
+ """
37
+ before_op_output_shape_trans_1 = \
38
+ tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
39
+ before_op_output_shape_trans = \
40
+ before_op_output_shape_trans_1
41
+
42
+ graph_node_input_1 = get_constant_or_variable(
43
+ graph_node.inputs[0],
44
+ before_op_output_shape_trans,
45
+ )
46
+ graph_node_output: gs.Variable = graph_node.outputs[0]
47
+
48
+ shape = graph_node_output.shape
49
+ dtype = graph_node_output.dtype
50
+
51
+ # Preserving Graph Structure (Dict)
52
+ tf_layers_dict[graph_node_output.name] = {
53
+ 'optype': graph_node.op,
54
+ 'shape': shape,
55
+ 'dtype': dtype,
56
+ }
57
+
58
+ # Generation of TF OP
59
+ input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
60
+ if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
61
+
62
+ # Pre-process transpose
63
+ input_tensor_1 = pre_process_transpose(
64
+ value_before_transpose=input_tensor_1,
65
+ param_target='inputs',
66
+ param_name=graph_node.inputs[0].name,
67
+ **kwargs,
68
+ )
69
+
70
+ tf_op_type = None
71
+ tf_layers_dict[graph_node_output.name]['tf_node'] = \
72
+ tf.bitwise.invert(
73
+ x=input_tensor_1,
74
+ name=graph_node.name,
75
+ )
76
+ tf_op_type = tf.bitwise.invert
77
+
78
+ # Post-process transpose
79
+ tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
80
+ value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
81
+ param_target='outputs',
82
+ param_name=graph_node.outputs[0].name,
83
+ **kwargs,
84
+ )
85
+
86
+ # Generation of Debug Info
87
+ tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
88
+ make_tf_node_info(
89
+ node_info={
90
+ 'tf_op_type': tf_op_type,
91
+ 'tf_inputs': {
92
+ 'x': input_tensor_1,
93
+ },
94
+ 'tf_outputs': {
95
+ 'output': tf_layers_dict[graph_node_output.name]['tf_node'],
96
+ },
97
+ }
98
+ )
@@ -0,0 +1,115 @@
1
+ import random
2
+ random.seed(0)
3
+ import numpy as np
4
+ np.random.seed(0)
5
+ import tensorflow as tf
6
+ import onnx_graphsurgeon as gs
7
+ from onnx2tf.utils.common_functions import (
8
+ get_constant_or_variable,
9
+ print_node_info,
10
+ inverted_operation_enable_disable,
11
+ make_tf_node_info,
12
+ get_replacement_parameter,
13
+ pre_process_transpose,
14
+ post_process_transpose,
15
+ )
16
+
17
+
18
+ @print_node_info
19
+ @inverted_operation_enable_disable
20
+ @get_replacement_parameter
21
+ def make_node(
22
+ *,
23
+ graph_node: gs.Node,
24
+ tf_layers_dict: dict,
25
+ **kwargs: dict,
26
+ ):
27
+ """BitwiseOr
28
+
29
+ Parameters
30
+ ----------
31
+ graph_node: gs.Node
32
+ graph_surgeon Node
33
+
34
+ tf_layers_dict: dict
35
+ optype, shape, dtype, tensorflow graph
36
+ """
37
+ before_op_output_shape_trans_1 = \
38
+ tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
39
+ before_op_output_shape_trans_2 = \
40
+ tf_layers_dict.get(graph_node.inputs[1].name, {}).get('before_op_output_shape_trans', True)
41
+ before_op_output_shape_trans = \
42
+ before_op_output_shape_trans_1 \
43
+ and before_op_output_shape_trans_2
44
+
45
+ graph_node_input_1 = get_constant_or_variable(
46
+ graph_node.inputs[0],
47
+ before_op_output_shape_trans,
48
+ )
49
+ graph_node_input_2 = get_constant_or_variable(
50
+ graph_node.inputs[1],
51
+ before_op_output_shape_trans,
52
+ )
53
+ graph_node_output: gs.Variable = graph_node.outputs[0]
54
+
55
+ shape = graph_node_output.shape
56
+ dtype = graph_node_output.dtype
57
+
58
+ # Preserving Graph Structure (Dict)
59
+ tf_layers_dict[graph_node_output.name] = {
60
+ 'optype': graph_node.op,
61
+ 'shape': shape,
62
+ 'dtype': dtype,
63
+ }
64
+
65
+ # Generation of TF OP
66
+ input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
67
+ if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
68
+ input_tensor_2 = tf_layers_dict[graph_node_input_2.name]['tf_node'] \
69
+ if isinstance(graph_node_input_2, gs.Variable) else graph_node_input_2
70
+
71
+ # Pre-process transpose
72
+ input_tensor_1 = pre_process_transpose(
73
+ value_before_transpose=input_tensor_1,
74
+ param_target='inputs',
75
+ param_name=graph_node.inputs[0].name,
76
+ **kwargs,
77
+ )
78
+ input_tensor_2 = pre_process_transpose(
79
+ value_before_transpose=input_tensor_2,
80
+ param_target='inputs',
81
+ param_name=graph_node.inputs[1].name,
82
+ **kwargs,
83
+ )
84
+
85
+ tf_op_type = None
86
+ tf_layers_dict[graph_node_output.name]['tf_node'] = \
87
+ tf.bitwise.bitwise_or(
88
+ x=input_tensor_1,
89
+ y=input_tensor_2,
90
+ name=graph_node.name,
91
+ )
92
+ tf_op_type = tf.bitwise.bitwise_or
93
+
94
+ # Post-process transpose
95
+ tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
96
+ value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
97
+ param_target='outputs',
98
+ param_name=graph_node.outputs[0].name,
99
+ **kwargs,
100
+ )
101
+
102
+ # Generation of Debug Info
103
+ tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
104
+ make_tf_node_info(
105
+ node_info={
106
+ 'tf_op_type': tf_op_type,
107
+ 'tf_inputs': {
108
+ 'x': input_tensor_1,
109
+ 'y': input_tensor_2,
110
+ },
111
+ 'tf_outputs': {
112
+ 'output': tf_layers_dict[graph_node_output.name]['tf_node'],
113
+ },
114
+ }
115
+ )
@@ -0,0 +1,115 @@
1
+ import random
2
+ random.seed(0)
3
+ import numpy as np
4
+ np.random.seed(0)
5
+ import tensorflow as tf
6
+ import onnx_graphsurgeon as gs
7
+ from onnx2tf.utils.common_functions import (
8
+ get_constant_or_variable,
9
+ print_node_info,
10
+ inverted_operation_enable_disable,
11
+ make_tf_node_info,
12
+ get_replacement_parameter,
13
+ pre_process_transpose,
14
+ post_process_transpose,
15
+ )
16
+
17
+
18
+ @print_node_info
19
+ @inverted_operation_enable_disable
20
+ @get_replacement_parameter
21
+ def make_node(
22
+ *,
23
+ graph_node: gs.Node,
24
+ tf_layers_dict: dict,
25
+ **kwargs: dict,
26
+ ):
27
+ """BitwiseXor
28
+
29
+ Parameters
30
+ ----------
31
+ graph_node: gs.Node
32
+ graph_surgeon Node
33
+
34
+ tf_layers_dict: dict
35
+ optype, shape, dtype, tensorflow graph
36
+ """
37
+ before_op_output_shape_trans_1 = \
38
+ tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
39
+ before_op_output_shape_trans_2 = \
40
+ tf_layers_dict.get(graph_node.inputs[1].name, {}).get('before_op_output_shape_trans', True)
41
+ before_op_output_shape_trans = \
42
+ before_op_output_shape_trans_1 \
43
+ and before_op_output_shape_trans_2
44
+
45
+ graph_node_input_1 = get_constant_or_variable(
46
+ graph_node.inputs[0],
47
+ before_op_output_shape_trans,
48
+ )
49
+ graph_node_input_2 = get_constant_or_variable(
50
+ graph_node.inputs[1],
51
+ before_op_output_shape_trans,
52
+ )
53
+ graph_node_output: gs.Variable = graph_node.outputs[0]
54
+
55
+ shape = graph_node_output.shape
56
+ dtype = graph_node_output.dtype
57
+
58
+ # Preserving Graph Structure (Dict)
59
+ tf_layers_dict[graph_node_output.name] = {
60
+ 'optype': graph_node.op,
61
+ 'shape': shape,
62
+ 'dtype': dtype,
63
+ }
64
+
65
+ # Generation of TF OP
66
+ input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
67
+ if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
68
+ input_tensor_2 = tf_layers_dict[graph_node_input_2.name]['tf_node'] \
69
+ if isinstance(graph_node_input_2, gs.Variable) else graph_node_input_2
70
+
71
+ # Pre-process transpose
72
+ input_tensor_1 = pre_process_transpose(
73
+ value_before_transpose=input_tensor_1,
74
+ param_target='inputs',
75
+ param_name=graph_node.inputs[0].name,
76
+ **kwargs,
77
+ )
78
+ input_tensor_2 = pre_process_transpose(
79
+ value_before_transpose=input_tensor_2,
80
+ param_target='inputs',
81
+ param_name=graph_node.inputs[1].name,
82
+ **kwargs,
83
+ )
84
+
85
+ tf_op_type = None
86
+ tf_layers_dict[graph_node_output.name]['tf_node'] = \
87
+ tf.bitwise.bitwise_xor(
88
+ x=input_tensor_1,
89
+ y=input_tensor_2,
90
+ name=graph_node.name,
91
+ )
92
+ tf_op_type = tf.bitwise.bitwise_xor
93
+
94
+ # Post-process transpose
95
+ tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
96
+ value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
97
+ param_target='outputs',
98
+ param_name=graph_node.outputs[0].name,
99
+ **kwargs,
100
+ )
101
+
102
+ # Generation of Debug Info
103
+ tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
104
+ make_tf_node_info(
105
+ node_info={
106
+ 'tf_op_type': tf_op_type,
107
+ 'tf_inputs': {
108
+ 'x': input_tensor_1,
109
+ 'y': input_tensor_2,
110
+ },
111
+ 'tf_outputs': {
112
+ 'output': tf_layers_dict[graph_node_output.name]['tf_node'],
113
+ },
114
+ }
115
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: onnx2tf
3
- Version: 1.29.3
3
+ Version: 1.29.4
4
4
  Summary: Self-Created Tools to convert ONNX files (NCHW) to TensorFlow/TFLite/Keras format (NHWC).
5
5
  Home-page: https://github.com/PINTO0309/onnx2tf
6
6
  Author: Katsuya Hyodo
@@ -106,10 +106,10 @@ https://github.com/PINTO0309/onnx2tf/wiki/model_status
106
106
  |BatchNormalization|:heavy_check_mark:|
107
107
  |Bernoulli|:heavy_check_mark:|
108
108
  |BitShift|:heavy_check_mark:|
109
- |BitwiseAnd|**Help wanted**|
110
- |BitwiseNot|**Help wanted**|
111
- |BitwiseOr|**Help wanted**|
112
- |BitwiseXor|**Help wanted**|
109
+ |BitwiseAnd|:heavy_check_mark:|
110
+ |BitwiseNot|:heavy_check_mark:|
111
+ |BitwiseOr|:heavy_check_mark:|
112
+ |BitwiseXor|:heavy_check_mark:|
113
113
  |Cast|:heavy_check_mark:|
114
114
  |Ceil|:heavy_check_mark:|
115
115
  |Celu|:heavy_check_mark:|
@@ -345,7 +345,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
345
345
  docker run --rm -it \
346
346
  -v `pwd`:/workdir \
347
347
  -w /workdir \
348
- ghcr.io/pinto0309/onnx2tf:1.29.3
348
+ ghcr.io/pinto0309/onnx2tf:1.29.4
349
349
 
350
350
  or
351
351
 
@@ -353,7 +353,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
353
353
  docker run --rm -it \
354
354
  -v `pwd`:/workdir \
355
355
  -w /workdir \
356
- docker.io/pinto0309/onnx2tf:1.29.3
356
+ docker.io/pinto0309/onnx2tf:1.29.4
357
357
 
358
358
  or
359
359
 
@@ -1,4 +1,4 @@
1
- onnx2tf/__init__.py,sha256=ZDwhPCl1LM1Ddndx1NFPoKgstr41zK18zlUvBQkOEC4,66
1
+ onnx2tf/__init__.py,sha256=pluvSdvaC9nePqUVOCSAuPcchjfddyLkq1cJnhohl5w,66
2
2
  onnx2tf/__main__.py,sha256=2RSCQ7d4lc6CwD-rlGn9UicPFg-P5du7ZD_yh-kuBEU,57
3
3
  onnx2tf/onnx2tf.py,sha256=wdBA-lgCEu-ZfUAKIUQgLe8hSP8ifE7rS6nWAq6iF6o,151519
4
4
  onnx2tf/ops/Abs.py,sha256=V7btmCG_ZvK_qJovUsguq0ZMJ349mhNQ4FHSgzP_Yuo,4029
@@ -16,6 +16,10 @@ onnx2tf/ops/AveragePool.py,sha256=kifQJZplqC2Px209BotbjXCPpRBQQsB8DlJYJTvJD78,20
16
16
  onnx2tf/ops/BatchNormalization.py,sha256=_hlf2-5-j3MCJHEoE2oMNQ8YhCm7ad9h2fwPpTo3i7g,26624
17
17
  onnx2tf/ops/Bernoulli.py,sha256=PM0xS0n1q4bnT_9PnbcKW8_Qj8dJYYBQR8kb2X-wIp4,3670
18
18
  onnx2tf/ops/BitShift.py,sha256=a28_E9hwA8yfjvtsrSKCZCeeMPB5RBQbjB3cmaNGN6k,3861
19
+ onnx2tf/ops/BitwiseAnd.py,sha256=snmmVzVwLxhWh0aKyaskScBvefncGyW7ZPVrmbugazk,3456
20
+ onnx2tf/ops/BitwiseNot.py,sha256=QuFUyK24JGrEOKYu-6lRi9uZLz4MKVtBwUqzDdqtBKA,2721
21
+ onnx2tf/ops/BitwiseOr.py,sha256=WSswhA3qmp3OJ4iIibl_2ps-tZEyfKI7B19GiFH7Uik,3453
22
+ onnx2tf/ops/BitwiseXor.py,sha256=d1WoshWdfcoQnYrdaxafRleipy1d0AKleTgh0G7lZlw,3456
19
23
  onnx2tf/ops/Cast.py,sha256=M0LRClHPgZ_8NubwME6ipKrAqcY9aKC5ihQXCkTkNkM,4601
20
24
  onnx2tf/ops/Ceil.py,sha256=0-jaueltpQSwpOIDUmy9DdTy98qN-XimYu5cHVPnUIs,3586
21
25
  onnx2tf/ops/Celu.py,sha256=9g7WNKo4G_jMtUXcoOfpNdLYqEsuyXLPkkyQZxDuL4U,3853
@@ -190,9 +194,9 @@ onnx2tf/utils/enums.py,sha256=7c5TqetqB07VjyHoxJHfLgtqBqk9ZRyUF33fPOJR1IM,1649
190
194
  onnx2tf/utils/iterative_json_optimizer.py,sha256=qqeIxWGxrhcCYk8-ebWnblnOkzDCwi-nseipHzHR_bk,10436
191
195
  onnx2tf/utils/json_auto_generator.py,sha256=OC-SfKtUg7zUxaXTAg6kT0ShzIc3ByjDa3FNp173DtA,60302
192
196
  onnx2tf/utils/logging.py,sha256=yUCmPuJ_XiUItM3sZMcaMO24JErkQy7zZwVTYWAuiKg,1982
193
- onnx2tf-1.29.3.dist-info/licenses/LICENSE,sha256=5v_Kxihy8i6mzHVl349ikSREaIdsl9YeUnX1KBDLD2w,1070
194
- onnx2tf-1.29.3.dist-info/licenses/LICENSE_onnx-tensorflow,sha256=gK4GtS9S5YcyINu6uuNNWdo-kBClyEM4MFLFGiNTeRM,11231
195
- onnx2tf-1.29.3.dist-info/METADATA,sha256=1s8K3rZ57YQpxwZButcAac449PZruGijsZ4kQPa4RCU,153234
196
- onnx2tf-1.29.3.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
197
- onnx2tf-1.29.3.dist-info/top_level.txt,sha256=WgfPiEy3f6vZ_FOpAIEA2CF3TCx1eYrhGw93Ih6b9Fw,8
198
- onnx2tf-1.29.3.dist-info/RECORD,,
197
+ onnx2tf-1.29.4.dist-info/licenses/LICENSE,sha256=5v_Kxihy8i6mzHVl349ikSREaIdsl9YeUnX1KBDLD2w,1070
198
+ onnx2tf-1.29.4.dist-info/licenses/LICENSE_onnx-tensorflow,sha256=gK4GtS9S5YcyINu6uuNNWdo-kBClyEM4MFLFGiNTeRM,11231
199
+ onnx2tf-1.29.4.dist-info/METADATA,sha256=HYGQZOLfX2Hvk0xSg3t8Dfd376S7WlGyAc16CEfQztM,153246
200
+ onnx2tf-1.29.4.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
201
+ onnx2tf-1.29.4.dist-info/top_level.txt,sha256=WgfPiEy3f6vZ_FOpAIEA2CF3TCx1eYrhGw93Ih6b9Fw,8
202
+ onnx2tf-1.29.4.dist-info/RECORD,,