Simone commited on
Commit
332c53a
·
verified ·
1 Parent(s): c3cbb40

Add files using upload-large-folder tool

Browse files
Files changed (50) hide show
  1. .gitattributes +3 -0
  2. LICENSE +233 -0
  3. LICENSE-QWEN +16 -0
  4. NOTICE +23 -0
  5. README.md +330 -0
  6. benchmarks/gpqa-diamond-20260921.json +65 -0
  7. chat_template.jinja +170 -0
  8. config.json +154 -0
  9. generation_config.json +12 -0
  10. kept_experts.json +1 -0
  11. merges.txt +0 -0
  12. model-00113-of-00131.safetensors +3 -0
  13. model-00115-of-00131.safetensors +3 -0
  14. model-00117-of-00131.safetensors +3 -0
  15. model-00119-of-00131.safetensors +3 -0
  16. model-00120-of-00131.safetensors +3 -0
  17. model-00121-of-00131.safetensors +3 -0
  18. model-00122-of-00131.safetensors +3 -0
  19. model-00123-of-00131.safetensors +3 -0
  20. model-00124-of-00131.safetensors +3 -0
  21. model-00125-of-00131.safetensors +3 -0
  22. model-00126-of-00131.safetensors +3 -0
  23. model-00127-of-00131.safetensors +3 -0
  24. model-00128-of-00131.safetensors +3 -0
  25. model-00129-of-00131.safetensors +3 -0
  26. model-00130-of-00131.safetensors +3 -0
  27. model-00131-of-00131.safetensors +3 -0
  28. model.safetensors.index.json +0 -0
  29. preprocessor_config.json +21 -0
  30. swift-1.5-flash-next-demo.mp4 +3 -0
  31. tokenizer.json +3 -0
  32. tokenizer_config.json +32 -0
  33. training/heal50.log +81 -0
  34. training/heal50/best.pt +3 -0
  35. training/heal50/quiz_all.json +10 -0
  36. training/heal50/train.log +73 -0
  37. training/heal75.log +87 -0
  38. training/heal75/best.pt +3 -0
  39. training/heal75/train.log +11 -0
  40. training/logic_val_swift.json +29 -0
  41. training/mask_maximin_0.25.pt +3 -0
  42. training/mask_maximin_0.35.pt +3 -0
  43. training/mask_maximin_0.5.pt +3 -0
  44. training/mask_maximin_0.6.pt +3 -0
  45. training/mask_maximin_0.75.pt +3 -0
  46. training/stages.log +4 -0
  47. training/stages2.log +7 -0
  48. ukisai-banner.png +3 -0
  49. video_preprocessor_config.json +21 -0
  50. vocab.json +0 -0
.gitattributes CHANGED
@@ -33,3 +33,6 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ tokenizer.json filter=lfs diff=lfs merge=lfs -text
37
+ ukisai-banner.png filter=lfs diff=lfs merge=lfs -text
38
+ swift-1.5-flash-next-demo.mp4 filter=lfs diff=lfs merge=lfs -text
LICENSE ADDED
@@ -0,0 +1,233 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Swift Open License v1.0
2
+
3
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
4
+
5
+ 1. Definitions.
6
+
7
+ "License" shall mean the terms and conditions for use, reproduction, and
8
+ distribution as defined by this document.
9
+
10
+ "Licensor" shall mean UkisAI.
11
+
12
+ "Legal Entity" shall mean the union of the acting entity and all other entities
13
+ that control, are controlled by, or are under common control with that entity.
14
+ For the purposes of this definition, "control" means (i) the power, direct or
15
+ indirect, to cause the direction or management of such entity, whether by
16
+ contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
17
+ outstanding shares, or (iii) beneficial ownership of such entity.
18
+
19
+ "You" (or "Your") shall mean an individual or Legal Entity exercising
20
+ permissions granted by this License.
21
+
22
+ "Source" form shall mean the preferred form for making modifications,
23
+ including but not limited to software source code, documentation source,
24
+ configuration files, and model weights in an unquantized, trainable format.
25
+
26
+ "Object" form shall mean any form resulting from mechanical transformation or
27
+ translation of a Source form, including but not limited to compiled object
28
+ code, generated documentation, quantized or otherwise converted model weights,
29
+ and conversions to other media types or file formats.
30
+
31
+ "Base Model" shall mean the Qwen3.8-Flash-Next model, Copyright (c) 2026 Qwen,
32
+ made available at https://huggingface.co/Qwen/Qwen3.8-Flash-Next, including its
33
+ weights, configuration, tokenizer, and chat template, in any form.
34
+
35
+ "Base Model License" shall mean the Qwen Community License 1.0, under which
36
+ the Base Model is made available. A copy is distributed with the Work in the
37
+ file LICENSE-QWEN.
38
+
39
+ "Swift Contribution" shall mean the modifications to the Base Model authored
40
+ by Licensor, in any form, including without limitation trained weight adapters,
41
+ weight deltas, model weights to the extent they differ from the Base Model, and
42
+ any configuration, documentation, and evaluation materials created by Licensor
43
+ and distributed with the Work.
44
+
45
+ "Work" shall mean the Swift Contribution together with, to the extent of
46
+ Licensor's rights therein, the Derivative Work of the Base Model made available
47
+ by Licensor under this License (as indicated by a copyright notice that is
48
+ included in or attached to the work), in any format made available by Licensor.
49
+
50
+ "Derivative Works" shall mean any work, whether in Source or Object form, that
51
+ is based on (or derived from) the Work and for which the editorial revisions,
52
+ annotations, elaborations, or other modifications represent, as a whole, an
53
+ original work of authorship. For the purposes of this License, Derivative Works
54
+ shall not include works that remain separable from, or merely link (or bind by
55
+ name) to the interfaces of, the Work and Derivative Works thereof.
56
+
57
+ "Contribution" shall mean any work of authorship, including the original
58
+ version of the Work and any modifications or additions to that Work or
59
+ Derivative Works thereof, that is intentionally submitted to Licensor for
60
+ inclusion in the Work by the copyright owner or by an individual or Legal
61
+ Entity authorized to submit on behalf of the copyright owner. For the purposes
62
+ of this definition, "submitted" means any form of electronic, verbal, or
63
+ written communication sent to the Licensor or its representatives, including
64
+ but not limited to communication on electronic mailing lists, source code
65
+ control systems, and issue tracking systems that are managed by, or on behalf
66
+ of, the Licensor for the purpose of discussing and improving the Work, but
67
+ excluding communication that is conspicuously marked or otherwise designated in
68
+ writing by the copyright owner as "Not a Contribution."
69
+
70
+ "Contributor" shall mean Licensor and any individual or Legal Entity on behalf
71
+ of whom a Contribution has been received by Licensor and subsequently
72
+ incorporated within the Work.
73
+
74
+ "Commercial Use" shall mean any use of the Work or a Derivative Work for direct
75
+ or indirect commercial advantage or monetary compensation.
76
+
77
+ "Qualified Non-Profit Organization" shall mean a Legal Entity that is organized
78
+ and operated exclusively for religious, charitable, scientific, testing for
79
+ public safety, literary, or educational purposes, and which is exempt from
80
+ federal income tax under Section 501(c)(3) of the United States Internal
81
+ Revenue Code of 1986, as amended, or any equivalent non-profit or charitable
82
+ organization in a foreign jurisdiction.
83
+
84
+ "Non-Commercial or Research Purposes" shall mean purposes that do not involve
85
+ any use of the Work or a Derivative Work for Commercial Use.
86
+
87
+ "Threshold" shall mean gross revenue of one million United States dollars
88
+ (US$1,000,000) or more, measured over the most recently completed fiscal year
89
+ of You together with every Legal Entity that controls, is controlled by, or is
90
+ under common control with You.
91
+
92
+ 2. Grant of Copyright License. Subject to the terms and conditions of this
93
+ License, including the Commercial Use limitation set forth in Section 5, each
94
+ Contributor hereby grants to You a perpetual, worldwide, non-exclusive,
95
+ no-charge, royalty-free, irrevocable copyright license to reproduce, prepare
96
+ Derivative Works of, publicly display, publicly perform, sublicense, and
97
+ distribute the Work and such Derivative Works in Source or Object form.
98
+
99
+ 3. Grant of Patent License. Subject to the terms and conditions of this
100
+ License, including the Commercial Use limitation set forth in Section 5, each
101
+ Contributor hereby grants to You a perpetual, worldwide, non-exclusive,
102
+ no-charge, royalty-free, irrevocable (except as stated in this section) patent
103
+ license to make, have made, use, offer to sell, sell, import, and otherwise
104
+ transfer the Work, where such license applies only to those patent claims
105
+ licensable by such Contributor that are necessarily infringed by their
106
+ Contribution(s) alone or by combination of their Contribution(s) with the Work
107
+ to which such Contribution(s) was submitted. If You institute patent litigation
108
+ against any entity (including a cross-claim or counterclaim in a lawsuit)
109
+ alleging that the Work or a Contribution incorporated within the Work
110
+ constitutes direct or contributory patent infringement, then any patent
111
+ licenses granted to You under this License for that Work shall terminate as of
112
+ the date such litigation is filed.
113
+
114
+ 4. Redistribution. You may reproduce and distribute copies of the Work or
115
+ Derivative Works thereof in any medium, with or without modifications, and in
116
+ Source or Object form, provided that You meet the following conditions:
117
+
118
+ (a) You must give any other recipients of the Work or Derivative Works a copy
119
+ of this License; and
120
+
121
+ (b) You must cause any modified files to carry prominent notices stating that
122
+ You changed the files; and
123
+
124
+ (c) You must retain, in the Source form of any Derivative Works that You
125
+ distribute, all copyright, patent, trademark, and attribution notices from the
126
+ Source form of the Work, excluding those notices that do not pertain to any
127
+ part of the Derivative Works; and
128
+
129
+ (d) If the Work includes a "NOTICE" text file as part of its distribution, then
130
+ any Derivative Works that You distribute must include a readable copy of the
131
+ attribution notices contained within such NOTICE file, excluding those notices
132
+ that do not pertain to any part of the Derivative Works, in at least one of the
133
+ following places: within a NOTICE text file distributed as part of the
134
+ Derivative Works; within the Source form or documentation, if provided along
135
+ with the Derivative Works; or, within a display generated by the Derivative
136
+ Works, if and wherever such third-party notices normally appear. The contents
137
+ of the NOTICE file are for informational purposes only and do not modify the
138
+ License. You may add Your own attribution notices within Derivative Works that
139
+ You distribute, alongside or as an addendum to the NOTICE text from the Work,
140
+ provided that such additional attribution notices cannot be construed as
141
+ modifying the License; and
142
+
143
+ (e) If the copy You distribute contains any portion of the Base Model
144
+ (including merged, quantized, or otherwise converted weights that incorporate
145
+ the Base Model), You must also give recipients a copy of the Base Model License
146
+ and must comply with the Base Model License with respect to the Base Model.
147
+
148
+ You may add Your own copyright statement to Your modifications and may provide
149
+ additional or different license terms and conditions for use, reproduction, or
150
+ distribution of Your modifications, or for any such Derivative Works as a
151
+ whole, provided Your use, reproduction, and distribution of the Work otherwise
152
+ complies with the conditions stated in this License, and provided that Section
153
+ 5 continues to apply to the Swift Contribution contained in any such Derivative
154
+ Works.
155
+
156
+ 5. Commercial Use Limitation.
157
+
158
+ (a) The rights granted under this License for Commercial Use are conditioned
159
+ upon You or Your Legal Entity not exceeding the Threshold.
160
+
161
+ (b) Any Commercial Use of the Work or a Derivative Work by a Legal Entity that
162
+ exceeds the Threshold is not licensed under this License.
163
+
164
+ (c) The Threshold shall not apply to a Qualified Non-Profit Organization's use
165
+ of the Work or a Derivative Work for Non-Commercial or Research Purposes.
166
+
167
+ (d) A Legal Entity that exceeds the Threshold may obtain a separate written
168
+ license for Commercial Use from Licensor (the "Swift Enterprise License").
169
+ Contact: https://ukisai.com/contact.
170
+
171
+ 6. Base Model Rights. The Work incorporates the Base Model. Nothing in this
172
+ License limits, restricts, conditions, or modifies any rights You have in the
173
+ Base Model under the Base Model License, and the Base Model remains available
174
+ to You from its licensor under the Base Model License. Sections 5 and 12 of
175
+ this License apply solely to the Swift Contribution and to the Work or any
176
+ Derivative Work to the extent it contains, incorporates, or is derived from the
177
+ Swift Contribution.
178
+
179
+ 7. Submission of Contributions. Unless You explicitly state otherwise, any
180
+ Contribution intentionally submitted for inclusion in the Work by You to the
181
+ Licensor shall be under the terms and conditions of this License, without any
182
+ additional terms or conditions. Notwithstanding the above, nothing herein shall
183
+ supersede or modify the terms of any separate license agreement you may have
184
+ executed with Licensor regarding such Contributions.
185
+
186
+ 8. Trademarks. This License does not grant permission to use the trade names,
187
+ trademarks, service marks, or product names of the Licensor (including "UkisAI"
188
+ and "Swift"), except for the reasonable and customary use in describing the
189
+ origin of the Work and reproducing the content of the NOTICE file.
190
+
191
+ 9. Disclaimer of Warranty. Unless required by applicable law or agreed to in
192
+ writing, Licensor provides the Work (and each Contributor provides its
193
+ Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
194
+ KIND, either express or implied, including, without limitation, any warranties
195
+ or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
196
+ PARTICULAR PURPOSE. You are solely responsible for determining the
197
+ appropriateness of using or redistributing the Work and assume any risks
198
+ associated with Your exercise of permissions under this License.
199
+
200
+ 10. Limitation of Liability. In no event and under no legal theory, whether in
201
+ tort (including negligence), contract, or otherwise, unless required by
202
+ applicable law (such as deliberate and grossly negligent acts) or agreed to in
203
+ writing, shall any Contributor be liable to You for damages, including any
204
+ direct, indirect, special, incidental, or consequential damages of any
205
+ character arising as a result of this License or out of the use or inability
206
+ to use the Work (including but not limited to damages for loss of goodwill,
207
+ work stoppage, computer failure or malfunction, or any and all other commercial
208
+ damages or losses), even if such Contributor has been advised of the
209
+ possibility of such damages.
210
+
211
+ 11. Accepting Warranty or Additional Liability. While redistributing the Work
212
+ or Derivative Works thereof, You may choose to offer, and charge a fee for,
213
+ acceptance of support, warranty, indemnity, or other liability obligations
214
+ and/or rights consistent with this License. However, in accepting such
215
+ obligations, You may act only on Your own behalf and on Your sole
216
+ responsibility, not on behalf of any other Contributor, and only if You agree
217
+ to indemnify, defend, and hold each Contributor harmless for any liability
218
+ incurred by, or claims asserted against, such Contributor by reason of your
219
+ accepting any such warranty or additional liability.
220
+
221
+ 12. Termination. This License will terminate automatically and immediately if
222
+ You fail to comply with any of its terms and conditions. Upon termination, You
223
+ must cease all use of the Swift Contribution and of any Work or Derivative
224
+ Works containing it, and delete all copies in Your possession. Termination does
225
+ not affect Your rights in the Base Model under the Base Model License.
226
+
227
+ END OF TERMS AND CONDITIONS
228
+
229
+ APPENDIX: Notice for redistributors (quantizations, conversions, merges).
230
+
231
+ Copyright 2026 UkisAI. Swift Contribution licensed under the Swift Open
232
+ License v1.0 (https://huggingface.co/ukisai/Swift-Qwen3.8-Flash-Next/blob/main/LICENSE).
233
+ Derivative of Qwen3.8-Flash-Next, Copyright (c) 2026 Qwen, Qwen Community License 1.0.
LICENSE-QWEN ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Qwen Community License 1.0
2
+
3
+ Copyright (c) 2026 Qwen
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software, including the model weights, parameters, configuration files, inference code and associated documentation files (collectively, the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, sell, deploy, host, fine-tune, and create derivative works from (collectively, "Use" or "Using") copies of the Software; and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
+
7
+ 1. The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. If the Software (or any derivative works thereof) is Used for any of the licensee's commercial products or services that have more than 100,000,000 monthly active users or US$ 20,000,000 (or equivalent in other currencies) monthly revenue, respective model name must be prominently displayed on the user interface of such product or service; and,
8
+
9
+ 2. If the licensee or any of its affiliates conducts a Model as a Service or AI Work Assistant business, the licensee shall obtain a separate license from Qwen before Using the Software or its derivative works for any commercial purpose. The foregoing requirement shall not apply to the licensee's internal Use of the Software, provided that such Use does not make the Software, its outputs, or its underlying model capabilities available to any third party.
10
+
11
+ "Model as a Service" means giving a third party access to language model inference or fine-tuning (e.g., via API or a hosted endpoint) in a manner that allows such third parties to exercise meaningful control over the inputs, parameters, or training data. This does not include the mere relaying of requests to models hosted by other third parties.
12
+ “AI Work Assistant” means an independent AI-powered product primarily designed for AI-assisted coding or office productivity (e.g., Qoder and QwenWork). It does not include: (a) a single-purpose AI tool (such as an AI translation tool); (b) an AI assistant primarily designed for a domain other than coding or office productivity (such as Taobao AI Shopping Assistant or AMap AI Chat); or (c) an AI assistant that is a feature of a product whose primary purpose is not AI-assisted coding or office productivity.
13
+
14
+ THE SOFTWARE AND ANY OUTPUT AND RESULTS THEREFROM ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL QWEN, ITS AFFILIATES OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. THE USE OF THE SOFTWARE MUST COMPLY WITH APPLICABLE LAWS AND REGULATIONS, AND MUST NOT INFRINGE THE INTELLECTUAL PROPERTY RIGHTS OF ANY THIRD PARTY.
15
+
16
+ For any questions regarding this license, please contact model-business@notice.qwencloud.com.
NOTICE ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Swift-Qwen3.8-Flash-Next
2
+ Copyright 2026 UkisAI
3
+
4
+ UkisAI's contribution (the "Swift Contribution") is licensed under the
5
+ Swift Open License v1.0. See LICENSE.
6
+
7
+ This model is a derivative work of Qwen3.8-Flash-Next
8
+ https://huggingface.co/Qwen/Qwen3.8-Flash-Next
9
+ Copyright (c) 2026 Qwen
10
+ Licensed under the Qwen Community License 1.0. See LICENSE-QWEN.
11
+
12
+ Changes made by UkisAI:
13
+ - model-*.safetensors: model weights were modified by UkisAI through fine-tuning.
14
+ - tokenizer.json, tokenizer_config.json: re-serialized from UkisAI's training
15
+ base. Vocabulary and merges are unchanged; the file format, some metadata
16
+ fields and the pre-tokenizer pattern differ from the Base Model files.
17
+ - README.md: replaced. LICENSE (Swift Open License v1.0), NOTICE,
18
+ benchmarks/ and ukisai-banner.png added.
19
+ - The Base Model's license text was moved from LICENSE to LICENSE-QWEN.
20
+ - All other files (config.json, generation_config.json, chat_template.jinja,
21
+ model.safetensors.index.json, vocab.json, merges.txt,
22
+ preprocessor_config.json, video_preprocessor_config.json) are unmodified
23
+ from Qwen3.8-Flash-Next and remain under the Qwen Community License 1.0.
README.md ADDED
@@ -0,0 +1,330 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: other
3
+ license_name: swift-open-license-1.0
4
+ license_link: https://huggingface.co/ukisai/Swift-Qwen3.8-Flash-Next/blob/main/LICENSE
5
+ library_name: transformers
6
+ pipeline_tag: image-text-to-text
7
+ gated: true
8
+ tags:
9
+ - qwen3_8
10
+ - moe
11
+ - reasoning
12
+ - efficient-thinking
13
+ - token-efficient
14
+ - post-training
15
+ - agentic
16
+ - terminal-bench
17
+ datasets:
18
+ - ukisai/Qwen3.8-27B-multi-turn-agent-sft
19
+ base_model: Qwen/Qwen3.8-Flash-Next
20
+ base_model_relation: finetune
21
+ ---
22
+
23
+ <div align="center">
24
+ <a href="https://ukisai.com"><img src="ukisai-banner.png" alt="UkisAI" style="width:100%;max-width:100%;height:auto;display:block;margin-bottom:0.6em;" /></a>
25
+ <div style="display:flex;justify-content:center;gap:0.6em;margin-bottom:1em;">
26
+ <a href="https://ukisai.com"><strong>Website</strong></a> &nbsp;&bull;&nbsp;
27
+ <a href="https://ukisai.com/products/swift"><strong>Learn more</strong></a> &nbsp;&bull;&nbsp;
28
+ <a href="https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-GGUF"><strong>GGUF</strong></a> &nbsp;&bull;&nbsp;
29
+ <a href="https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-GSQ-RCO-GGUF"><strong>GSQ-RCO GGUF</strong></a> &nbsp;&bull;&nbsp;
30
+ <a href="#evaluation"><strong>Evaluation</strong></a> &nbsp;&bull;&nbsp;
31
+ <a href="#license-and-access"><strong>Enterprise licensing</strong></a>
32
+ </div>
33
+ </div>
34
+
35
+ # Swift 1.5 Qwen3.8-Flash-Next
36
+
37
+ Swift 1.5 Qwen3.8-Flash-Next is UkisAI's reasoning-efficient derivative of [Qwen3.8-Flash-Next](https://huggingface.co/Qwen/Qwen3.8-Flash-Next).
38
+ It uses **63.4% fewer thinking tokens**, with a **1.8x speed up** while keeping the **accuracy loss <1%** vs base on xhigh.
39
+
40
+ ## Demo
41
+
42
+ We gave base Qwen3.8-Flash-Next and Swift 1.5 Qwen3.8-Flash-Next the same prompt:
43
+
44
+ > Create a 3D endless runner that has the fast, playful feel of Subway Surfers, but make the world and characters your own. I want to run through a lively place, dodge things, collect rewards, and feel the pace build the longer I survive. Make it fun to control and visually memorable. Use your judgment for the setting, mechanics, and little details that make it feel like a real game. Build it so I can launch and play it locally, then tell me how to run it.
45
+
46
+ <video src="https://huggingface.co/ukisai/Swift-Qwen3.8-Flash-Next/resolve/main/swift-1.5-flash-next-demo.mp4" controls autoplay muted loop playsinline style="width:100%;height:auto;border-radius:12px;"></video>
47
+
48
+ Try the game yourself here: [https://ukisai.com/swift-games/flash-next](https://ukisai.com/swift-games/flash-next)
49
+
50
+ Base Qwen3.8-Flash-Next took 8 minutes 52 seconds to build its game. Swift 1.5 took 4 minutes 56 seconds.
51
+
52
+ ## Training approach
53
+
54
+ We made Swift Flash Next efficient by figuring out which tokens were linked to pathological overthinking and penalizing them without "attacking" the reasoning length directly then regained the accuracy with RL and OPD, leading to "compressed" token usage while maintaining accuracy.
55
+
56
+ Swift 1.5 produces shorter reasoning traces. In our testing, we also observe fewer overthinking errors.
57
+
58
+ This release also features our previously mentioned post-training methods adapted specifically for coding and long-horizon agent
59
+ work such as personal agents, terminal use and software engineering.
60
+
61
+ Our training data is viewable here: https://huggingface.co/datasets/ukisai/Qwen3.8-27B-multi-turn-agent-sft albeit it is not used out of the box, but rather re-sampled, turned into proper RL environments etc.
62
+
63
+ ## Evaluation
64
+
65
+ All scores compare the Qwen3.8-Flash-Next BF16 base with the Swift 1.5 BF16 checkpoint. Token columns report **thinking tokens**, except Terminal-Bench 2.1, which reports **total generated output tokens**.
66
+
67
+ <style>
68
+ .swift-table { width:100%; table-layout:fixed; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid #27344A; border-radius:20px; background:#0D111B; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; font-size:14px; color:#BFBDBD; }
69
+ .swift-table th { padding:13px 8px; text-align:center; font-weight:700; color:#AEB5C7; background:#0D111B; border-right:1px solid #27344A; border-bottom:1px solid #27344A; }
70
+ .swift-table td { padding:14px 8px; text-align:center; color:#BFBDBD; background:#0D111B; border-right:1px solid #27344A; border-bottom:1px solid #27344A; vertical-align:middle; overflow-wrap:break-word; }
71
+ .swift-table tr > :last-child { border-right:0; }
72
+ .swift-table tbody tr:last-child td { border-bottom:0; }
73
+ .swift-table .benchmark-heading { color:#B7BDCD; background:#0D111B; border-bottom:3px solid #7D45B5; }
74
+ .swift-table .score-heading { color:#F0C5FF; background:#52239E; border-bottom:3px solid #7D45B5; }
75
+ .swift-table .tokens-heading, .swift-table .median-heading { color:#D4E8FF; background:#304FC2; border-bottom:3px solid #5687E6; }
76
+ .swift-table .benchmark { padding-left:18px; text-align:left; color:#FFFFFF; font-weight:600; }
77
+ .swift-table .section { padding:12px 18px; text-align:left; color:#B489FF; background:#2A2541; font-weight:700; letter-spacing:.08em; text-transform:uppercase; border-top:1px solid #3A3159; border-bottom:1px solid #3A3159; }
78
+ .swift-table .swift { background:#171127; }
79
+ .swift-table thead tr:nth-child(2) .swift { color:#D3A0FF; }
80
+ .swift-table .reduction { color:#69BFFF; background:#101B2C; font-weight:700; }
81
+ .swift-table .detail { color:#8C94A8; font-size:12px; font-weight:500; }
82
+
83
+ @media (max-width: 640px) {
84
+ .swift-table { display:block !important; width:100% !important; max-width:100%; overflow-x:auto !important; -webkit-overflow-scrolling:touch; table-layout:auto !important; }
85
+ .swift-table th, .swift-table td { min-width:100px; }
86
+ .swift-table th:first-child, .swift-table td:first-child { min-width:160px; }
87
+ }
88
+ </style>
89
+
90
+ <table class="swift-table">
91
+ <thead>
92
+ <tr>
93
+ <th rowspan="2" class="benchmark-heading" style="width:32%;text-align:left;padding-left:18px;vertical-align:bottom;">Benchmark</th>
94
+ <th colspan="2" class="score-heading">Score</th>
95
+ <th colspan="3" class="tokens-heading">Mean tokens</th>
96
+ <th class="median-heading" style="width:14%;">Median tokens</th>
97
+ </tr>
98
+ <tr>
99
+ <th>Base</th><th class="swift">Swift 1.5</th>
100
+ <th>Base</th><th class="swift">Swift 1.5</th>
101
+ <th class="reduction">Reduction</th><th class="reduction">Reduction</th>
102
+ </tr>
103
+ </thead>
104
+ <tbody>
105
+ <tr><td class="section" colspan="7">General reasoning</td></tr>
106
+ <tr><td class="benchmark">GPQA-Diamond</td><td>89.80%</td><td class="swift">89.60%</td><td>17,683</td><td class="swift">7,823</td><td class="reduction">&darr; 55.8%</td><td class="reduction">&darr; 63.4%</td></tr>
107
+ <tr><td class="benchmark">MMLU-Pro</td><td>87.75%</td><td class="swift">87.20%</td><td>3,528</td><td class="swift">1,519</td><td class="reduction">&darr; 57.0%</td><td class="reduction">&darr; 24.0%</td></tr>
108
+ <tr><td class="benchmark">C-Eval</td><td>93.27%</td><td class="swift">93.60%</td><td>1,048</td><td class="swift">586</td><td class="reduction">&darr; 44.1%</td><td class="reduction">&darr; 7.1%</td></tr>
109
+ <tr><td class="benchmark">IFBench</td><td>73.20%</td><td class="swift">70.13%</td><td>8,310</td><td class="swift">4,411</td><td class="reduction">&darr; 46.9%</td><td class="reduction">&darr; 55.6%</td></tr>
110
+ <tr><td class="section" colspan="7">Mathematics</td></tr>
111
+ <tr><td class="benchmark">AIME 2026</td><td>98.67%</td><td class="swift">96.67%</td><td>23,015</td><td class="swift">15,806</td><td class="reduction">&darr; 31.3%</td><td class="reduction">&darr; 51.1%</td></tr>
112
+ <tr><td class="benchmark">HMMT (Nov 2025)</td><td>98.00%</td><td class="swift">97.33%</td><td>25,487</td><td class="swift">16,530</td><td class="reduction">&darr; 35.1%</td><td class="reduction">&darr; 54.7%</td></tr>
113
+ <tr><td class="section" colspan="7">Multimodal</td></tr>
114
+ <tr><td class="benchmark">ERQA</td><td>70.80%</td><td class="swift">69.30%</td><td>4,036</td><td class="swift">1,788</td><td class="reduction">&darr; 55.7%</td><td class="reduction">&darr; 47.7%</td></tr>
115
+ <tr><td class="section" colspan="7">Coding</td></tr>
116
+ <tr><td class="benchmark">LiveCodeBench v6</td><td>88.40%</td><td class="swift">90.39%</td><td>17,833</td><td class="swift">9,849</td><td class="reduction">&darr; 44.8%</td><td class="reduction">&darr; 52.0%</td></tr>
117
+ <tr><td class="section" colspan="7">Agentic coding</td></tr>
118
+ <tr><td class="benchmark">Terminal-Bench 2.1*</td><td>67.64%</td><td class="swift">69.66%</td><td>40,591</td><td class="swift">45,428</td><td class="reduction">&uarr; 11.9%</td><td class="reduction">&darr; 17.9%</td></tr>
119
+ </tbody>
120
+ </table>
121
+
122
+ <p><strong>* Note:</strong> Terminal-Bench 2.1 results for Flash-Next are not an apples-to-apples comparison with Swift 1.5 27B. Flash-Next used default task timeouts, leading to lower scores for both the base model and Swift Flash-Next.</p>
123
+
124
+ <details>
125
+ <summary><strong>How to reproduce</strong></summary>
126
+
127
+ <p style="font-size:13px;line-height:1.5;margin:8px 0;"><strong>Serving:</strong> BF16 · Qwen3 reasoning parser · context 262,144 · thinking xhigh · MTP disabled.<br>
128
+ <strong>Sampling:</strong> temperature 1.0 · top_p 0.95 · top_k 20 · min_p 0 · presence_penalty 0 · repetition_penalty 1.<br>
129
+ <strong>Benchmarks:</strong> five seeds (0–4) for the seeded question benchmarks; Terminal-Bench 2.1 uses five attempts per task. LiveCodeBench is full release v6 mean pass@1 over seeds.<br>
130
+ <strong>Terminal-Bench 2.1:</strong> Harbor 0.20.0 / Terminus-2 2.0.0, pinned 89-task dataset, JSON parser, interleaved thinking, temperature 1, top_p 1, 131,072-token server context, 3,600-second LLM call timeout and native per-task limits. Swift used concurrency 8; its context-recovery fix was applied during the run.</p>
131
+
132
+ <table style="display:table;width:100%;border-collapse:collapse;font-size:13px;line-height:1.3;margin:8px 0;">
133
+ <thead><tr><th style="padding:4px 8px;text-align:left;">Benchmark</th><th style="padding:4px 8px;text-align:right;">Output cap</th></tr></thead>
134
+ <tbody>
135
+ <tr><td style="padding:3px 8px;">GPQA-Diamond</td><td style="padding:3px 8px;text-align:right;">100,000</td></tr>
136
+ <tr><td style="padding:3px 8px;">MMLU-Pro</td><td style="padding:3px 8px;text-align:right;">100,000</td></tr>
137
+ <tr><td style="padding:3px 8px;">C-Eval</td><td style="padding:3px 8px;text-align:right;">16,384</td></tr>
138
+ <tr><td style="padding:3px 8px;">IFBench</td><td style="padding:3px 8px;text-align:right;">81,920</td></tr>
139
+ <tr><td style="padding:3px 8px;">AIME 2026</td><td style="padding:3px 8px;text-align:right;">250,000</td></tr>
140
+ <tr><td style="padding:3px 8px;">HMMT Nov 2025</td><td style="padding:3px 8px;text-align:right;">250,000</td></tr>
141
+ <tr><td style="padding:3px 8px;">ERQA</td><td style="padding:3px 8px;text-align:right;">100,000</td></tr>
142
+ <tr><td style="padding:3px 8px;">LiveCodeBench v6</td><td style="padding:3px 8px;text-align:right;">100,000</td></tr>
143
+ </tbody>
144
+ </table>
145
+
146
+ </details>
147
+
148
+ ## Efficiency across reasoning efforts
149
+
150
+ GPQA-Diamond at each `reasoning_effort` setting, Swift 1.5 against the base at the same setting:
151
+
152
+ <table class="swift-table" style="display:table;width:100%;table-layout:fixed;">
153
+ <colgroup><col style="width:16%"><col style="width:12%"><col style="width:12%"><col style="width:12%"><col style="width:12%"><col style="width:18%"><col style="width:18%"></colgroup>
154
+ <thead>
155
+ <tr>
156
+ <th rowspan="2" class="benchmark-heading" style="width:16%;text-align:left;padding-left:18px;vertical-align:bottom;">Reasoning effort</th>
157
+ <th colspan="2" class="score-heading" style="width:24%;">Score</th>
158
+ <th colspan="3" class="tokens-heading" style="width:42%;">Mean tokens</th>
159
+ <th class="median-heading" style="width:18%;">Median tokens</th>
160
+ </tr>
161
+ <tr>
162
+ <th>Base</th><th class="swift">Swift 1.5</th>
163
+ <th>Base</th><th class="swift">Swift 1.5</th>
164
+ <th class="reduction">Reduction</th><th class="reduction">Reduction</th>
165
+ </tr>
166
+ </thead>
167
+ <tbody>
168
+ <tr><td class="benchmark">Xhigh</td><td>89.80%</td><td class="swift">89.60%</td><td>17,683</td><td class="swift">7,823</td><td class="reduction">&darr; 55.8%</td><td class="reduction">&darr; 63.4%</td></tr>
169
+ <tr><td class="benchmark">Medium</td><td>86.36%</td><td class="swift">83.74%</td><td>4,157</td><td class="swift">2,483</td><td class="reduction">&darr; 40.3%</td><td class="reduction">&darr; 25.1%</td></tr>
170
+ <tr><td class="benchmark">Low</td><td>87.17%</td><td class="swift">84.75%</td><td>3,966</td><td class="swift">2,645</td><td class="reduction">&darr; 33.3%</td><td class="reduction">&darr; 19.7%</td></tr>
171
+ </tbody>
172
+ </table>
173
+
174
+ At xhigh, Swift 1.5 trails base by 0.20 percentage points while using 55.8% fewer mean and 63.4% fewer median thinking tokens. Medium and low save tokens but also lose 2.62 and 2.42 percentage points respectively.
175
+
176
+ ## Quantized models
177
+
178
+ | Format | Repository | Runtime |
179
+ | --- | --- | --- |
180
+ | AWQ INT4 (W4A16) | [Swift-1.5-Qwen3.8-Flash-Next-W4A16-AWQ](https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-W4A16-AWQ) | vLLM (`compressed-tensors`) |
181
+ | AutoRound INT4 (W4A16) | [Swift-1.5-Qwen3.8-Flash-Next-W4A16-AutoRound](https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-W4A16-AutoRound) | vLLM (`auto-round`) |
182
+ | NVFP4 | [Swift-1.5-Qwen3.8-Flash-Next-NVFP4](https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-NVFP4) | NVIDIA Blackwell |
183
+ | GGUF | [Swift-1.5-Qwen3.8-Flash-Next-GGUF](https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-GGUF) | llama.cpp |
184
+ | GSQ-RCO GGUF (compact 2–3 bit) | [Swift-1.5-Qwen3.8-Flash-Next-GSQ-RCO-GGUF](https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-GSQ-RCO-GGUF) | llama.cpp |
185
+
186
+ ## How to use
187
+
188
+ The BF16 checkpoint is about 360 GB, so it needs a multi-GPU node. We evaluated it with tensor parallelism 8.
189
+
190
+ ### GGUF download
191
+
192
+ The **[GGUF version](https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-GGUF)** is
193
+ available for compatible llama.cpp-based runtimes. For the smallest files, use the
194
+ **[GSQ-RCO GGUF version](https://huggingface.co/ukisai/Swift-1.5-Qwen3.8-Flash-Next-GSQ-RCO-GGUF)**: 66.5–76 GB mixed-precision quants refined for Swift 1.5 Flash-Next.
195
+
196
+ ### UkisAI API
197
+
198
+ Swift 1.5 Flash-Next is served through an OpenAI-compatible API at
199
+ `https://ukisai.com/api/flash-next/v1`. It is **free for research purposes** and needs no
200
+ API key. The model id is `flash-next`.
201
+
202
+ ~~~python
203
+ from openai import OpenAI
204
+
205
+ client = OpenAI(base_url="https://ukisai.com/api/flash-next/v1", api_key="none")
206
+ response = client.chat.completions.create(
207
+ model="flash-next",
208
+ messages=[{"role": "user", "content": "Explain speculative decoding in two sentences."}],
209
+ )
210
+ print(response.choices[0].message.content)
211
+ ~~~
212
+
213
+ ~~~bash
214
+ curl https://ukisai.com/api/flash-next/v1/chat/completions \
215
+ -H "Content-Type: application/json" \
216
+ -d '{"model": "flash-next", "messages": [{"role": "user", "content": "Hello, Swift."}]}'
217
+ ~~~
218
+
219
+ ### vLLM
220
+
221
+ Use a vLLM build with Qwen3.8-Flash-Next support:
222
+
223
+ ~~~bash
224
+ vllm serve ukisai/Swift-Qwen3.8-Flash-Next \
225
+ --dtype bfloat16 \
226
+ --tensor-parallel-size 8 \
227
+ --max-model-len 262144 \
228
+ --reasoning-parser qwen3 \
229
+ --enable-auto-tool-choice \
230
+ --tool-call-parser qwen3_xml \
231
+ --trust-remote-code \
232
+ --port 8000
233
+ ~~~
234
+
235
+ Reasoning effort is set per request through the chat template, for example
236
+ `"chat_template_kwargs": {"reasoning_effort": "low"}`. `xhigh` is the default; `medium` and `low` are also supported.
237
+
238
+ ### SGLang
239
+
240
+ Alternatively, use an SGLang build with Qwen3.8-Flash-Next support, such as the
241
+ `lmsysorg/sglang:qwen38flashnext` image:
242
+
243
+ ~~~bash
244
+ sglang serve \
245
+ --model-path ukisai/Swift-Qwen3.8-Flash-Next \
246
+ --tp 8 \
247
+ --context-length 262144 \
248
+ --mem-fraction-static 0.85 \
249
+ --reasoning-parser qwen3 \
250
+ --tool-call-parser qwen3_coder \
251
+ --port 8000
252
+ ~~~
253
+
254
+ Adjust tensor parallelism and context length to your GPU memory. See the base model's
255
+ [vLLM recipe](https://recipes.vllm.ai/Qwen/Qwen3.8-Flash-Next) and
256
+ [SGLang cookbook](https://docs.sglang.io/cookbook/autoregressive/Qwen/Qwen3.8-Flash-Next)
257
+ for installation and hardware-specific settings.
258
+
259
+ ### Transformers
260
+
261
+ Use a Transformers release with Qwen3.8-Flash-Next support:
262
+
263
+ ~~~python
264
+ import torch
265
+ from transformers import AutoModelForImageTextToText, AutoProcessor
266
+
267
+ model_id = "ukisai/Swift-Qwen3.8-Flash-Next"
268
+ processor = AutoProcessor.from_pretrained(model_id)
269
+ model = AutoModelForImageTextToText.from_pretrained(
270
+ model_id,
271
+ torch_dtype=torch.bfloat16,
272
+ device_map="auto",
273
+ )
274
+ ~~~
275
+
276
+ To extend the context to 1,000,000 tokens, follow the YaRN settings on the
277
+ [Qwen3.8-Flash-Next model card](https://huggingface.co/Qwen/Qwen3.8-Flash-Next).
278
+
279
+ ### Optional MTP decoding
280
+
281
+ The checkpoint includes the base model's one-layer MTP head. To enable self-speculative
282
+ decoding, append the corresponding flags to the server command above:
283
+
284
+ ~~~bash
285
+ # vLLM
286
+ --speculative-config '{"method":"mtp","num_speculative_tokens":1}'
287
+
288
+ # SGLang
289
+ --speculative-algorithm NEXTN --speculative-num-steps 3 \
290
+ --speculative-eagle-topk 1 --speculative-num-draft-tokens 4
291
+ ~~~
292
+
293
+ The benchmark scores above were measured without MTP.
294
+
295
+ ## License and access
296
+
297
+ Swift 1.5 Qwen3.8-Flash-Next is a derivative of [Qwen3.8-Flash-Next](https://huggingface.co/Qwen/Qwen3.8-Flash-Next)
298
+ (Copyright (c) 2026 Qwen, [Qwen Community License 1.0](https://huggingface.co/ukisai/Swift-Qwen3.8-Flash-Next/blob/main/LICENSE-QWEN)).
299
+ UkisAI's contribution, including the adapted weights, is licensed under the
300
+ **[Swift Open License v1.0](https://huggingface.co/ukisai/Swift-Qwen3.8-Flash-Next/blob/main/LICENSE)**.
301
+ See [NOTICE](https://huggingface.co/ukisai/Swift-Qwen3.8-Flash-Next/blob/main/NOTICE) for the change notice and
302
+ attribution details.
303
+
304
+ Personal, research, educational, evaluation, and commercial use of the Swift contribution are free for individuals
305
+ and organizations with gross annual revenue, including affiliates, of up to US$1,000,000. Above that threshold,
306
+ commercial use requires a separate Swift Enterprise License. Contact [UkisAI](https://ukisai.com/contact) for terms.
307
+
308
+ The base model's terms still apply to it. Under the Qwen Community License 1.0, organizations that run a
309
+ Model-as-a-Service or AI Work Assistant business need a separate license from Qwen before any commercial use,
310
+ and products above 100 million monthly active users or US$20 million monthly revenue must prominently display
311
+ the model name. Nothing in the Swift Open License limits your rights in Qwen3.8-Flash-Next itself under the
312
+ Qwen Community License.
313
+
314
+ ## Citation
315
+
316
+ ~~~bibtex
317
+ @misc{swift-qwen3.8-flash-next,
318
+ title = {Swift 1.5 Qwen3.8-Flash-Next},
319
+ author = {UkisAI},
320
+ year = {2026},
321
+ url = {https://huggingface.co/ukisai/Swift-Qwen3.8-Flash-Next}
322
+ }
323
+ ~~~
324
+
325
+ ## Acknowledgements
326
+
327
+ We acknowledge the [NVIDIA Innovation Lab](https://www.nvidia.com/en-us/data-center/innovation-lab/),
328
+ [Amazon Web Services](https://aws.amazon.com/), and
329
+ [Google Cloud](https://cloud.google.com/) for providing compute credits and
330
+ infrastructure support for Swift's development, training, and evaluation.
benchmarks/gpqa-diamond-20260921.json ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "ukisai/Swift-Qwen3.8-Flash-Next",
3
+ "benchmark": "GPQA-Diamond",
4
+ "completed_utc": "2026-09-21",
5
+ "protocol": {
6
+ "questions": 198,
7
+ "seeds": [
8
+ 0,
9
+ 1,
10
+ 2,
11
+ 3,
12
+ 4
13
+ ],
14
+ "responses_per_effort": 990,
15
+ "output_cap_tokens": 100000,
16
+ "request_timeout_seconds": 10800,
17
+ "client_concurrency": 8,
18
+ "sampling": {
19
+ "temperature": 1.0,
20
+ "top_p": 0.95,
21
+ "top_k": 20,
22
+ "min_p": 0,
23
+ "presence_penalty": 0,
24
+ "repetition_penalty": 1
25
+ },
26
+ "serving": "BF16 weights, vLLM (development build), tensor parallelism 8",
27
+ "scoring": "strict answer match over all responses, truncated responses included",
28
+ "thinking_tokens": "reasoning tokens per response"
29
+ },
30
+ "results": {
31
+ "xhigh": {
32
+ "responses": 990,
33
+ "correct": 887,
34
+ "accuracy": 0.896,
35
+ "request_errors": 0,
36
+ "truncations": 4,
37
+ "thinking_tokens_mean": 7823.5,
38
+ "thinking_tokens_median": 2325.0,
39
+ "thinking_tokens_total": 7745252,
40
+ "config_sha256": "f79ddb1ab0fe95682cba18beb502a467cdd39d6d4f7b15bfde8c1e2751ff14fc"
41
+ },
42
+ "medium": {
43
+ "responses": 990,
44
+ "correct": 829,
45
+ "accuracy": 0.8374,
46
+ "request_errors": 0,
47
+ "truncations": 0,
48
+ "thinking_tokens_mean": 2483.0,
49
+ "thinking_tokens_median": 1098.0,
50
+ "thinking_tokens_total": 2458213,
51
+ "config_sha256": "bdf180430e5453e05893e3123c7b758731547f72cbacbd11edeb9132d8c26c82"
52
+ },
53
+ "low": {
54
+ "responses": 990,
55
+ "correct": 839,
56
+ "accuracy": 0.8475,
57
+ "request_errors": 0,
58
+ "truncations": 1,
59
+ "thinking_tokens_mean": 2644.7,
60
+ "thinking_tokens_median": 1014.5,
61
+ "thinking_tokens_total": 2618242,
62
+ "config_sha256": "bd3e52fdb98770eb7545cfb64ed5e37703a9fdbd0479fc7fb3ec79066217a840"
63
+ }
64
+ }
65
+ }
chat_template.jinja ADDED
@@ -0,0 +1,170 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {%- set image_count = namespace(value=0) %}
2
+ {%- set video_count = namespace(value=0) %}
3
+ {%- macro render_content(content, do_vision_count, is_system_content=false) %}
4
+ {%- if content is string %}
5
+ {{- content }}
6
+ {%- elif content is iterable and content is not mapping %}
7
+ {%- for item in content %}
8
+ {%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
9
+ {%- if is_system_content %}
10
+ {{- raise_exception('System message cannot contain images.') }}
11
+ {%- endif %}
12
+ {%- if do_vision_count %}
13
+ {%- set image_count.value = image_count.value + 1 %}
14
+ {%- endif %}
15
+ {%- if add_vision_id %}
16
+ {{- 'Picture ' ~ image_count.value ~ ': ' }}
17
+ {%- endif %}
18
+ {{- '<|vision_start|><|image_pad|><|vision_end|>' }}
19
+ {%- elif 'video' in item or item.type == 'video' %}
20
+ {%- if is_system_content %}
21
+ {{- raise_exception('System message cannot contain videos.') }}
22
+ {%- endif %}
23
+ {%- if do_vision_count %}
24
+ {%- set video_count.value = video_count.value + 1 %}
25
+ {%- endif %}
26
+ {%- if add_vision_id %}
27
+ {{- 'Video ' ~ video_count.value ~ ': ' }}
28
+ {%- endif %}
29
+ {{- '<|vision_start|><|video_pad|><|vision_end|>' }}
30
+ {%- elif 'text' in item %}
31
+ {{- item.text }}
32
+ {%- else %}
33
+ {{- raise_exception('Unexpected item type in content.') }}
34
+ {%- endif %}
35
+ {%- endfor %}
36
+ {%- elif content is none or content is undefined %}
37
+ {{- '' }}
38
+ {%- else %}
39
+ {{- raise_exception('Unexpected content type.') }}
40
+ {%- endif %}
41
+ {%- endmacro %}
42
+ {%- if not messages %}
43
+ {{- raise_exception('No messages provided.') }}
44
+ {%- endif %}
45
+ {%- set reasoning_instructions = '' %}
46
+ {%- if enable_thinking is undefined or enable_thinking is true %}
47
+ {%- set resolved_reasoning_effort = reasoning_effort|default('xhigh') %}
48
+ {%- if resolved_reasoning_effort not in ('xhigh', 'medium', 'low') %}
49
+ {{- raise_exception('Unexpected reasoning effort ' ~ reasoning_effort ~ '. Supported types are xhigh (default), medium, and low.') }}
50
+ {%- endif %}
51
+ {%- if resolved_reasoning_effort == 'xhigh' %}
52
+ {%- set reasoning_instructions = 'Reasoning effort is set to xhigh. Please think carefully through the task, validate key assumptions, consider plausible alternatives, and prioritize correctness, consistency, and clarity in the final answer.' %}
53
+ {%- elif resolved_reasoning_effort == 'low' %}
54
+ {%- set reasoning_instructions = 'Reasoning effort is set to low. Keep your thinking brief and focused, moving directly to the conclusion without unnecessary elaboration.' %}
55
+ {%- endif %}
56
+ {%- endif %}
57
+ {%- if tools and tools is iterable and tools is not mapping %}
58
+ {{- '<|im_start|>system\n' }}
59
+ {%- if reasoning_instructions %}
60
+ {{- reasoning_instructions + '\n\n' }}
61
+ {%- endif %}
62
+ {{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
63
+ {%- for tool in tools %}
64
+ {{- "\n" }}
65
+ {{- tool | tojson }}
66
+ {%- endfor %}
67
+ {{- "\n</tools>" }}
68
+ {{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
69
+ {%- if messages[0].role == 'system' %}
70
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
71
+ {%- if content %}
72
+ {{- '\n\n' + content }}
73
+ {%- endif %}
74
+ {%- endif %}
75
+ {{- '<|im_end|>\n' }}
76
+ {%- else %}
77
+ {%- if messages[0].role == 'system' %}
78
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
79
+ {%- if content %}
80
+ {{- '<|im_start|>system\n' + (reasoning_instructions + '\n\n' if reasoning_instructions else '') + content + '<|im_end|>\n' }}
81
+ {%- elif reasoning_instructions %}
82
+ {{- '<|im_start|>system\n' + reasoning_instructions + '<|im_end|>\n' }}
83
+ {%- endif %}
84
+ {%- elif reasoning_instructions %}
85
+ {{- '<|im_start|>system\n' + reasoning_instructions + '<|im_end|>\n' }}
86
+ {%- endif %}
87
+ {%- endif %}
88
+ {%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
89
+ {%- for message in messages[::-1] %}
90
+ {%- set index = (messages|length - 1) - loop.index0 %}
91
+ {%- if ns.multi_step_tool and message.role == "user" %}
92
+ {%- set content = render_content(message.content, false)|trim %}
93
+ {%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
94
+ {%- set ns.multi_step_tool = false %}
95
+ {%- set ns.last_query_index = index %}
96
+ {%- endif %}
97
+ {%- endif %}
98
+ {%- endfor %}
99
+ {%- if ns.multi_step_tool %}
100
+ {{- raise_exception('No user query found in messages.') }}
101
+ {%- endif %}
102
+ {%- for message in messages %}
103
+ {%- set content = render_content(message.content, true)|trim %}
104
+ {%- if message.role == "system" %}
105
+ {%- if not loop.first %}
106
+ {{- raise_exception('System message must be at the beginning.') }}
107
+ {%- endif %}
108
+ {%- elif message.role == "user" %}
109
+ {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
110
+ {%- elif message.role == "assistant" %}
111
+ {%- set reasoning_content = '' %}
112
+ {%- if message.reasoning_content is string %}
113
+ {%- set reasoning_content = message.reasoning_content %}
114
+ {%- endif %}
115
+ {%- set reasoning_content = reasoning_content|trim %}
116
+ {%- if preserve_thinking is undefined or preserve_thinking is true or loop.index0 > ns.last_query_index %}
117
+ {{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
118
+ {%- else %}
119
+ {{- '<|im_start|>' + message.role + '\n' + content }}
120
+ {%- endif %}
121
+ {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
122
+ {%- for tool_call in message.tool_calls %}
123
+ {%- if tool_call.function is defined %}
124
+ {%- set tool_call = tool_call.function %}
125
+ {%- endif %}
126
+ {%- if loop.first %}
127
+ {%- if content|trim %}
128
+ {{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
129
+ {%- else %}
130
+ {{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
131
+ {%- endif %}
132
+ {%- else %}
133
+ {{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
134
+ {%- endif %}
135
+ {%- if tool_call.arguments is defined and tool_call.arguments != '' %}
136
+ {%- for args_name, args_value in tool_call.arguments|items %}
137
+ {{- '<parameter=' + args_name + '>\n' }}
138
+ {%- set args_value = args_value | string if args_value is string else args_value | tojson | safe %}
139
+ {{- args_value }}
140
+ {{- '\n</parameter>\n' }}
141
+ {%- endfor %}
142
+ {%- endif %}
143
+ {{- '</function>\n</tool_call>' }}
144
+ {%- endfor %}
145
+ {%- endif %}
146
+ {{- '<|im_end|>\n' }}
147
+ {%- elif message.role == "tool" %}
148
+ {%- if loop.previtem and loop.previtem.role != "tool" %}
149
+ {{- '<|im_start|>user' }}
150
+ {%- endif %}
151
+ {{- '\n<tool_response>\n' }}
152
+ {{- content }}
153
+ {{- '\n</tool_response>' }}
154
+ {%- if not loop.last and loop.nextitem.role != "tool" %}
155
+ {{- '<|im_end|>\n' }}
156
+ {%- elif loop.last %}
157
+ {{- '<|im_end|>\n' }}
158
+ {%- endif %}
159
+ {%- else %}
160
+ {{- raise_exception('Unexpected message role.') }}
161
+ {%- endif %}
162
+ {%- endfor %}
163
+ {%- if add_generation_prompt %}
164
+ {{- '<|im_start|>assistant\n' }}
165
+ {%- if enable_thinking is defined and enable_thinking is false %}
166
+ {{- '<think>\n\n</think>\n\n' }}
167
+ {%- else %}
168
+ {{- '<think>\n' }}
169
+ {%- endif %}
170
+ {%- endif %}
config.json ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen4ExpForConditionalGeneration"
4
+ ],
5
+ "image_token_id": 248056,
6
+ "language_model_only": false,
7
+ "model_type": "qwen4_exp",
8
+ "text_config": {
9
+ "attention_bias": false,
10
+ "attention_dropout": 0.0,
11
+ "bos_token_id": 248044,
12
+ "dtype": "bfloat16",
13
+ "eos_token_id": 248044,
14
+ "full_attention_interval": 4,
15
+ "hc_count": 4,
16
+ "hc_lowrank": 320,
17
+ "head_dim": 256,
18
+ "heads_per_ngram": 8,
19
+ "hidden_act": "silu",
20
+ "hidden_size": 2560,
21
+ "indexer_budget": 2048,
22
+ "indexer_compress_ratio": 4,
23
+ "indexer_head_dim": 128,
24
+ "indexer_kv_heads": 1,
25
+ "indexer_n_heads": 4,
26
+ "initializer_range": 0.02,
27
+ "layer_types": [
28
+ "linear_attention",
29
+ "linear_attention",
30
+ "linear_attention",
31
+ "full_attention",
32
+ "linear_attention",
33
+ "linear_attention",
34
+ "linear_attention",
35
+ "full_attention",
36
+ "linear_attention",
37
+ "linear_attention",
38
+ "linear_attention",
39
+ "full_attention",
40
+ "linear_attention",
41
+ "linear_attention",
42
+ "linear_attention",
43
+ "full_attention",
44
+ "linear_attention",
45
+ "linear_attention",
46
+ "linear_attention",
47
+ "full_attention",
48
+ "linear_attention",
49
+ "linear_attention",
50
+ "linear_attention",
51
+ "full_attention",
52
+ "linear_attention",
53
+ "linear_attention",
54
+ "linear_attention",
55
+ "full_attention",
56
+ "linear_attention",
57
+ "linear_attention",
58
+ "linear_attention",
59
+ "full_attention",
60
+ "linear_attention",
61
+ "linear_attention",
62
+ "linear_attention",
63
+ "full_attention",
64
+ "linear_attention",
65
+ "linear_attention",
66
+ "linear_attention",
67
+ "full_attention",
68
+ "linear_attention",
69
+ "linear_attention",
70
+ "linear_attention",
71
+ "full_attention",
72
+ "linear_attention",
73
+ "linear_attention",
74
+ "linear_attention",
75
+ "full_attention"
76
+ ],
77
+ "linear_conv_kernel_dim": 4,
78
+ "linear_key_head_dim": 128,
79
+ "linear_num_key_heads": 16,
80
+ "linear_num_value_heads": 48,
81
+ "linear_value_head_dim": 128,
82
+ "make_ngram_vocab_size_divisible_by": 128,
83
+ "mamba_ssm_dtype": "float32",
84
+ "max_position_embeddings": 262144,
85
+ "model_type": "qwen4_exp_text",
86
+ "moe_intermediate_size": 640,
87
+ "mtp": {
88
+ "hybrid": true,
89
+ "layer_types": [
90
+ "full_attention"
91
+ ],
92
+ "mtp_use_hidden_state_from_layer": null,
93
+ "num_hidden_layers": 0,
94
+ "rope_theta": 10000000
95
+ },
96
+ "mtp_num_hidden_layers": 0,
97
+ "mtp_use_dedicated_embeddings": false,
98
+ "ngram_size": 3,
99
+ "ngram_vocab_size_base": 20000000,
100
+ "num_attention_heads": 24,
101
+ "num_experts": 256,
102
+ "num_experts_per_tok": 10,
103
+ "num_hidden_layers": 48,
104
+ "num_key_value_heads": 2,
105
+ "output_gate_type": "sigmoid",
106
+ "output_router_logits": false,
107
+ "pad_token_id": null,
108
+ "partial_rotary_factor": 0.25,
109
+ "ple_conv_kernel_size": 4,
110
+ "ple_embed_dim": 2560,
111
+ "ple_layer_ids": [
112
+ 2
113
+ ],
114
+ "rms_norm_eps": 1e-06,
115
+ "rope_parameters": {
116
+ "mrope_interleaved": true,
117
+ "mrope_section": [
118
+ 11,
119
+ 11,
120
+ 10
121
+ ],
122
+ "partial_rotary_factor": 0.25,
123
+ "rope_theta": 10000000,
124
+ "rope_type": "default"
125
+ },
126
+ "router_aux_loss_coef": 0.001,
127
+ "shared_expert_intermediate_size": 640,
128
+ "split_ngram_parts": 128,
129
+ "tie_word_embeddings": false,
130
+ "use_cache": true,
131
+ "vocab_size": 248320
132
+ },
133
+ "tie_word_embeddings": false,
134
+ "transformers_version": "5.8.0.dev0",
135
+ "video_token_id": 248057,
136
+ "vision_config": {
137
+ "deepstack_visual_indexes": [],
138
+ "depth": 27,
139
+ "hidden_act": "gelu_pytorch_tanh",
140
+ "hidden_size": 1152,
141
+ "in_channels": 3,
142
+ "initializer_range": 0.02,
143
+ "intermediate_size": 4304,
144
+ "model_type": "qwen4_exp",
145
+ "num_heads": 16,
146
+ "num_position_embeddings": 2304,
147
+ "out_hidden_size": 2560,
148
+ "patch_size": 16,
149
+ "spatial_merge_size": 2,
150
+ "temporal_patch_size": 2
151
+ },
152
+ "vision_end_token_id": 248054,
153
+ "vision_start_token_id": 248053
154
+ }
generation_config.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 248044,
3
+ "do_sample": true,
4
+ "eos_token_id": [
5
+ 248046,
6
+ 248044
7
+ ],
8
+ "pad_token_id": 248044,
9
+ "temperature": 1.0,
10
+ "top_k": 20,
11
+ "top_p": 0.95
12
+ }
kept_experts.json ADDED
@@ -0,0 +1 @@
 
 
1
+ [[0, 1, 4, 7, 9, 10, 12, 14, 16, 19, 20, 21, 23, 24, 27, 31, 32, 34, 35, 36, 37, 38, 39, 44, 45, 46, 49, 57, 61, 62, 63, 64, 66, 67, 68, 69, 70, 71, 73, 74, 76, 79, 81, 83, 87, 90, 91, 93, 94, 95, 97, 98, 99, 100, 101, 103, 108, 109, 116, 119, 121, 122, 123, 125, 126, 128, 129, 130, 132, 138, 139, 142, 143, 145, 149, 151, 153, 154, 155, 159, 160, 165, 166, 167, 168, 169, 173, 175, 176, 178, 180, 182, 183, 186, 187, 188, 190, 194, 197, 198, 199, 200, 203, 205, 206, 208, 209, 211, 212, 214, 215, 220, 221, 224, 225, 227, 228, 230, 232, 234, 240, 241, 246, 247, 248, 249, 251, 258, 261, 264, 266, 267, 269, 270, 272, 273, 274, 275, 278, 280, 287, 289, 290, 291, 293, 294, 297, 298, 299, 301, 304, 305, 308, 312, 313, 315, 316, 319, 320, 321, 322, 328, 329, 330, 332, 333, 337, 338, 339, 340, 342, 347, 348, 349, 352, 360, 361, 362, 363, 364, 367, 369, 371, 376, 377, 378, 380, 381, 384, 386, 390, 392, 393, 394, 395, 396, 398, 399, 401, 403, 406, 415, 416, 419, 423, 425, 430, 433, 434, 435, 436, 440, 441, 443, 444, 445, 446, 447, 448, 450, 451, 456, 457, 458, 459, 461, 463, 464, 468, 470, 471, 473, 474, 476, 478, 479, 480, 481, 483, 484, 485, 489, 491, 492, 493, 494, 495, 496, 498, 499, 501, 504, 505, 507, 508, 509], [1, 2, 3, 4, 5, 6, 16, 18, 19, 20, 21, 23, 28, 30, 32, 34, 36, 39, 44, 48, 52, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 71, 72, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 88, 90, 91, 93, 97, 99, 101, 102, 103, 105, 108, 111, 112, 113, 114, 115, 119, 125, 128, 129, 130, 132, 134, 135, 137, 144, 146, 152, 156, 157, 158, 160, 161, 162, 164, 165, 166, 172, 173, 174, 176, 179, 183, 186, 189, 190, 193, 194, 195, 196, 197, 199, 200, 202, 203, 204, 209, 211, 212, 215, 219, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 234, 235, 237, 238, 240, 241, 242, 243, 244, 245, 246, 247, 250, 251, 257, 258, 259, 261, 262, 263, 264, 265, 266, 267, 268, 269, 271, 273, 274, 276, 281, 284, 285, 287, 290, 292, 293, 294, 302, 304, 305, 307, 308, 314, 316, 319, 320, 321, 324, 325, 328, 329, 334, 336, 340, 342, 344, 345, 348, 350, 351, 355, 363, 364, 366, 370, 371, 372, 375, 377, 378, 381, 382, 383, 384, 386, 387, 388, 389, 390, 391, 394, 395, 398, 400, 401, 402, 403, 405, 406, 407, 409, 410, 414, 415, 417, 420, 423, 426, 427, 429, 431, 434, 437, 438, 440, 443, 445, 447, 449, 451, 453, 454, 456, 464, 465, 466, 469, 470, 471, 475, 476, 477, 482, 483, 486, 487, 489, 490, 491, 493, 496, 499, 500, 502, 504, 505, 510], [0, 2, 10, 18, 20, 21, 22, 25, 27, 28, 30, 35, 36, 37, 39, 40, 41, 42, 43, 46, 47, 50, 51, 56, 58, 61, 63, 64, 69, 70, 72, 74, 75, 76, 77, 79, 83, 84, 86, 88, 89, 92, 96, 97, 101, 102, 103, 104, 105, 106, 107, 109, 110, 112, 113, 114, 117, 123, 124, 125, 127, 128, 132, 133, 134, 135, 138, 139, 142, 146, 147, 148, 149, 150, 151, 153, 154, 155, 157, 160, 161, 162, 164, 167, 168, 170, 173, 175, 177, 178, 180, 181, 185, 188, 192, 196, 200, 202, 207, 210, 212, 214, 215, 217, 222, 226, 229, 230, 236, 237, 239, 240, 249, 250, 251, 252, 253, 256, 257, 258, 260, 263, 264, 265, 268, 270, 273, 276, 279, 280, 283, 286, 287, 288, 292, 294, 295, 296, 297, 301, 302, 303, 304, 305, 306, 307, 308, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 322, 324, 333, 334, 335, 336, 339, 341, 346, 347, 348, 350, 351, 355, 357, 358, 359, 360, 363, 364, 366, 367, 368, 369, 370, 371, 372, 373, 374, 377, 378, 379, 380, 382, 384, 388, 391, 392, 393, 394, 399, 402, 403, 405, 406, 407, 408, 409, 410, 413, 415, 417, 418, 419, 425, 426, 427, 430, 431, 432, 433, 434, 435, 436, 437, 439, 440, 443, 445, 451, 452, 454, 456, 457, 458, 460, 466, 467, 469, 470, 472, 473, 479, 480, 481, 482, 483, 485, 486, 487, 490, 491, 493, 494, 495, 496, 500, 506, 511], [0, 1, 4, 6, 9, 13, 14, 17, 18, 19, 20, 23, 24, 26, 27, 29, 30, 32, 35, 37, 40, 44, 45, 47, 49, 52, 53, 54, 57, 58, 59, 61, 64, 67, 69, 73, 74, 75, 77, 78, 82, 84, 85, 86, 88, 90, 94, 96, 100, 102, 104, 106, 107, 108, 114, 115, 116, 117, 122, 124, 130, 132, 135, 138, 139, 141, 142, 146, 148, 150, 153, 156, 157, 160, 161, 162, 168, 169, 171, 174, 175, 176, 181, 185, 186, 187, 188, 192, 193, 196, 197, 198, 199, 200, 203, 205, 208, 212, 214, 215, 216, 217, 220, 221, 225, 228, 229, 230, 233, 235, 237, 239, 240, 242, 244, 249, 252, 253, 254, 256, 258, 259, 260, 261, 262, 263, 264, 265, 267, 269, 272, 273, 274, 275, 276, 279, 280, 283, 286, 287, 288, 289, 293, 295, 296, 300, 301, 302, 305, 310, 316, 317, 322, 323, 325, 326, 331, 332, 333, 334, 335, 336, 337, 338, 339, 342, 343, 354, 355, 356, 357, 358, 359, 362, 363, 364, 366, 370, 371, 374, 375, 379, 381, 383, 384, 386, 391, 392, 393, 394, 395, 396, 397, 398, 400, 402, 403, 404, 405, 406, 407, 408, 410, 411, 412, 416, 418, 419, 420, 421, 422, 424, 426, 429, 431, 432, 433, 434, 435, 440, 441, 442, 445, 447, 450, 451, 457, 459, 460, 461, 468, 471, 473, 476, 477, 479, 480, 481, 482, 483, 484, 485, 488, 489, 493, 494, 495, 496, 497, 498, 501, 503, 504, 505, 507, 510], [1, 2, 5, 6, 9, 10, 13, 14, 16, 18, 19, 23, 24, 29, 33, 34, 36, 38, 39, 40, 41, 42, 43, 44, 48, 49, 50, 53, 54, 56, 60, 63, 65, 67, 68, 69, 71, 73, 74, 77, 82, 83, 85, 86, 87, 90, 92, 93, 96, 98, 99, 100, 105, 108, 110, 112, 114, 115, 116, 117, 123, 125, 126, 128, 130, 131, 132, 133, 134, 135, 136, 143, 147, 148, 149, 150, 152, 153, 156, 159, 160, 161, 162, 163, 164, 166, 167, 168, 169, 175, 176, 178, 180, 181, 182, 183, 188, 189, 191, 192, 195, 196, 198, 199, 200, 201, 202, 203, 205, 206, 207, 208, 210, 213, 216, 222, 223, 225, 230, 233, 234, 237, 239, 241, 242, 244, 245, 249, 251, 252, 255, 257, 263, 265, 266, 267, 270, 272, 276, 283, 284, 287, 289, 290, 292, 293, 294, 296, 299, 308, 309, 310, 311, 312, 313, 314, 316, 321, 324, 325, 327, 329, 331, 334, 336, 338, 339, 340, 342, 345, 346, 349, 350, 354, 357, 358, 359, 360, 363, 368, 370, 371, 372, 375, 376, 377, 382, 384, 385, 389, 390, 392, 393, 399, 400, 401, 402, 403, 404, 405, 406, 407, 410, 412, 413, 414, 416, 417, 419, 420, 421, 423, 424, 426, 428, 430, 431, 432, 436, 437, 440, 445, 447, 449, 452, 454, 455, 458, 463, 464, 465, 466, 469, 470, 471, 477, 479, 480, 483, 485, 486, 488, 489, 490, 493, 494, 495, 496, 497, 499, 500, 501, 502, 506, 507, 508], [1, 2, 3, 4, 5, 6, 7, 9, 11, 12, 13, 17, 20, 21, 24, 26, 29, 32, 34, 36, 37, 41, 42, 46, 47, 51, 52, 54, 56, 57, 58, 59, 60, 67, 68, 71, 73, 74, 75, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 90, 92, 93, 96, 97, 98, 100, 101, 103, 104, 106, 107, 110, 111, 112, 113, 118, 119, 121, 123, 125, 126, 127, 129, 131, 133, 134, 136, 137, 139, 141, 142, 143, 146, 153, 154, 156, 158, 159, 160, 161, 163, 165, 166, 167, 168, 170, 172, 173, 177, 178, 179, 180, 181, 186, 187, 188, 190, 191, 196, 197, 202, 204, 206, 208, 211, 214, 215, 218, 220, 222, 224, 228, 229, 233, 234, 236, 241, 242, 244, 245, 247, 253, 254, 255, 257, 258, 259, 260, 262, 263, 268, 270, 272, 273, 275, 277, 278, 279, 280, 283, 284, 285, 290, 291, 292, 293, 294, 296, 297, 299, 301, 302, 307, 309, 311, 312, 317, 322, 324, 328, 338, 339, 340, 341, 342, 343, 344, 346, 348, 349, 350, 351, 354, 358, 360, 364, 368, 369, 370, 373, 374, 375, 377, 379, 380, 383, 384, 388, 389, 391, 392, 397, 399, 400, 402, 405, 406, 409, 414, 415, 416, 419, 420, 421, 424, 425, 427, 429, 430, 431, 435, 442, 445, 446, 447, 450, 452, 454, 455, 456, 457, 458, 459, 461, 468, 469, 475, 476, 478, 481, 482, 483, 485, 487, 489, 492, 493, 495, 496, 501, 505, 507, 508, 509, 510], [0, 3, 4, 5, 6, 7, 10, 13, 22, 24, 26, 27, 29, 30, 33, 35, 36, 39, 40, 42, 44, 45, 47, 48, 49, 50, 52, 53, 54, 56, 57, 59, 60, 66, 67, 68, 71, 73, 74, 77, 79, 80, 81, 82, 83, 84, 87, 92, 93, 95, 97, 99, 100, 108, 111, 112, 113, 114, 117, 118, 119, 121, 125, 129, 131, 132, 134, 135, 136, 137, 138, 140, 142, 144, 145, 147, 149, 151, 153, 158, 161, 163, 164, 166, 168, 169, 170, 175, 176, 179, 180, 183, 185, 186, 188, 189, 191, 193, 194, 197, 198, 200, 201, 207, 208, 209, 210, 214, 215, 216, 217, 219, 220, 222, 223, 224, 227, 228, 231, 234, 236, 238, 239, 241, 243, 245, 247, 248, 250, 253, 255, 258, 259, 260, 262, 263, 264, 265, 267, 269, 272, 277, 279, 280, 281, 284, 285, 286, 288, 289, 292, 295, 296, 303, 308, 310, 312, 315, 318, 319, 321, 322, 323, 324, 326, 329, 331, 332, 333, 334, 338, 340, 343, 345, 347, 352, 353, 354, 357, 358, 365, 368, 371, 372, 374, 377, 379, 381, 382, 383, 384, 385, 389, 391, 392, 394, 395, 397, 398, 401, 402, 403, 404, 409, 415, 416, 417, 419, 422, 423, 427, 428, 429, 431, 433, 435, 436, 437, 441, 444, 445, 447, 450, 451, 452, 454, 455, 456, 457, 459, 464, 467, 468, 470, 471, 472, 475, 476, 477, 480, 481, 482, 484, 486, 491, 495, 496, 498, 499, 500, 501, 503, 505, 507, 510, 511], [0, 1, 2, 4, 5, 9, 10, 12, 13, 14, 16, 18, 20, 21, 22, 23, 26, 31, 33, 34, 35, 38, 39, 41, 43, 44, 47, 48, 49, 51, 52, 55, 60, 61, 64, 65, 71, 72, 75, 76, 80, 81, 85, 86, 93, 95, 99, 101, 102, 105, 107, 108, 109, 112, 113, 115, 116, 117, 119, 122, 123, 128, 130, 132, 134, 135, 136, 137, 139, 140, 142, 143, 147, 150, 154, 155, 156, 157, 158, 160, 161, 164, 166, 167, 168, 170, 171, 172, 174, 175, 176, 181, 185, 187, 188, 190, 191, 193, 194, 200, 202, 204, 206, 208, 211, 212, 215, 219, 220, 221, 223, 225, 226, 227, 228, 230, 231, 232, 234, 235, 237, 240, 241, 242, 244, 250, 252, 253, 256, 258, 259, 260, 263, 267, 268, 269, 274, 275, 277, 280, 281, 282, 283, 287, 290, 291, 292, 294, 295, 296, 301, 302, 303, 304, 305, 307, 308, 312, 313, 315, 316, 318, 319, 320, 322, 323, 324, 325, 326, 327, 333, 334, 335, 338, 343, 346, 349, 350, 352, 353, 355, 356, 357, 360, 363, 365, 367, 368, 374, 376, 378, 382, 385, 386, 390, 392, 394, 395, 396, 397, 399, 402, 404, 406, 410, 412, 413, 415, 417, 418, 419, 422, 423, 424, 426, 427, 429, 430, 435, 436, 437, 438, 439, 441, 442, 443, 448, 449, 450, 451, 452, 456, 457, 458, 461, 464, 466, 469, 470, 472, 474, 479, 480, 485, 489, 492, 494, 496, 499, 501, 503, 505, 506, 508, 510, 511], [1, 2, 3, 4, 6, 11, 14, 17, 20, 26, 27, 30, 31, 32, 35, 37, 38, 39, 40, 41, 44, 46, 48, 49, 51, 53, 54, 59, 60, 61, 62, 64, 65, 66, 68, 70, 73, 74, 76, 78, 81, 83, 86, 87, 89, 93, 97, 100, 103, 105, 110, 111, 113, 115, 116, 119, 123, 124, 126, 127, 129, 133, 135, 138, 140, 143, 145, 146, 151, 153, 154, 155, 158, 160, 162, 163, 164, 167, 169, 170, 171, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 184, 185, 187, 189, 191, 195, 197, 199, 201, 204, 208, 210, 212, 215, 216, 220, 221, 222, 224, 225, 227, 228, 230, 231, 232, 234, 235, 236, 237, 238, 239, 241, 242, 244, 247, 252, 253, 255, 258, 260, 261, 262, 268, 270, 272, 273, 275, 277, 278, 280, 281, 283, 289, 292, 296, 297, 299, 301, 302, 304, 305, 307, 308, 311, 312, 313, 314, 317, 320, 322, 323, 325, 326, 329, 331, 333, 334, 337, 339, 341, 345, 347, 350, 351, 353, 355, 356, 357, 359, 361, 363, 365, 366, 369, 370, 371, 375, 376, 378, 379, 382, 386, 387, 389, 391, 394, 397, 398, 399, 402, 405, 408, 410, 412, 414, 419, 420, 421, 422, 424, 426, 427, 429, 433, 437, 439, 442, 443, 446, 447, 448, 449, 450, 451, 453, 456, 458, 461, 462, 467, 468, 469, 470, 471, 477, 480, 482, 485, 486, 487, 488, 489, 491, 493, 496, 497, 498, 499, 500, 501, 502, 504, 505, 507, 510], [0, 2, 3, 4, 5, 8, 10, 11, 13, 14, 16, 17, 18, 19, 20, 23, 25, 30, 31, 32, 34, 36, 38, 39, 40, 45, 46, 48, 49, 50, 52, 54, 55, 56, 57, 58, 63, 64, 66, 68, 70, 71, 76, 77, 78, 79, 83, 86, 89, 90, 92, 95, 98, 103, 109, 110, 111, 113, 117, 120, 122, 125, 126, 127, 128, 129, 132, 133, 134, 139, 140, 141, 144, 145, 146, 147, 148, 149, 152, 154, 155, 157, 158, 159, 160, 162, 163, 166, 168, 169, 170, 171, 175, 180, 183, 184, 187, 190, 191, 192, 194, 195, 198, 201, 204, 205, 206, 212, 213, 219, 221, 222, 225, 228, 232, 235, 237, 238, 239, 242, 243, 244, 245, 246, 247, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 262, 266, 269, 273, 281, 282, 283, 285, 286, 293, 294, 295, 297, 299, 300, 301, 302, 304, 305, 306, 307, 309, 313, 315, 316, 319, 321, 326, 327, 328, 329, 332, 333, 334, 335, 337, 339, 340, 343, 344, 347, 348, 349, 354, 356, 357, 358, 359, 363, 366, 370, 371, 372, 377, 380, 382, 390, 391, 395, 396, 397, 398, 399, 400, 404, 405, 406, 410, 412, 415, 416, 419, 420, 421, 422, 423, 424, 425, 426, 428, 429, 432, 434, 436, 439, 440, 441, 443, 455, 456, 457, 459, 461, 462, 464, 465, 466, 467, 468, 471, 476, 477, 478, 481, 483, 484, 485, 486, 488, 491, 493, 497, 498, 499, 502, 505, 506, 508, 509, 510, 511], [0, 1, 2, 3, 5, 6, 7, 9, 10, 12, 16, 18, 19, 20, 23, 24, 25, 26, 27, 31, 32, 35, 36, 37, 38, 42, 45, 47, 48, 49, 50, 51, 52, 53, 55, 56, 60, 61, 65, 69, 76, 77, 78, 79, 80, 82, 83, 84, 86, 87, 88, 89, 91, 92, 95, 98, 99, 100, 102, 104, 105, 107, 109, 111, 112, 113, 114, 115, 117, 119, 123, 125, 126, 129, 131, 133, 136, 137, 138, 142, 143, 144, 146, 152, 153, 154, 157, 160, 161, 163, 164, 169, 172, 173, 174, 177, 178, 180, 181, 182, 183, 188, 189, 190, 194, 195, 196, 203, 205, 206, 207, 208, 209, 210, 212, 217, 218, 219, 220, 222, 223, 227, 231, 232, 233, 236, 238, 239, 240, 241, 242, 243, 244, 245, 248, 249, 251, 252, 253, 254, 258, 265, 267, 268, 269, 270, 272, 274, 275, 276, 278, 279, 280, 282, 285, 293, 296, 299, 301, 302, 307, 308, 310, 311, 314, 315, 317, 320, 321, 322, 324, 325, 326, 327, 330, 332, 340, 345, 346, 347, 348, 349, 350, 353, 354, 361, 362, 364, 365, 366, 369, 370, 373, 374, 377, 378, 380, 384, 389, 391, 393, 394, 397, 398, 400, 402, 403, 406, 409, 410, 413, 415, 419, 421, 425, 427, 430, 431, 432, 437, 440, 441, 444, 445, 446, 447, 448, 450, 453, 454, 458, 461, 462, 463, 466, 468, 469, 472, 483, 485, 487, 488, 490, 492, 494, 496, 497, 498, 501, 502, 503, 505, 506, 507, 509, 511], [1, 2, 3, 5, 6, 7, 10, 14, 15, 16, 17, 18, 23, 28, 29, 30, 31, 32, 34, 35, 36, 38, 39, 41, 43, 45, 46, 50, 53, 59, 62, 65, 66, 67, 69, 71, 72, 73, 76, 77, 78, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 93, 94, 95, 96, 103, 108, 109, 110, 111, 112, 113, 114, 115, 117, 120, 121, 123, 125, 126, 127, 129, 131, 133, 135, 137, 139, 141, 142, 144, 146, 148, 150, 152, 153, 154, 156, 157, 159, 163, 170, 172, 174, 175, 177, 179, 185, 186, 188, 189, 194, 196, 199, 200, 201, 203, 205, 208, 211, 214, 215, 216, 218, 223, 224, 229, 230, 231, 232, 233, 234, 236, 237, 238, 239, 242, 243, 247, 248, 250, 251, 255, 258, 260, 261, 264, 267, 269, 270, 271, 273, 276, 277, 279, 283, 284, 287, 288, 290, 291, 292, 293, 294, 295, 297, 298, 300, 301, 304, 306, 308, 310, 311, 312, 313, 318, 320, 321, 322, 324, 325, 326, 329, 330, 331, 334, 335, 336, 339, 340, 342, 343, 344, 346, 349, 350, 352, 354, 356, 358, 359, 360, 362, 365, 367, 369, 371, 374, 375, 376, 377, 378, 380, 385, 386, 387, 389, 390, 392, 395, 397, 398, 399, 401, 403, 406, 408, 409, 410, 412, 415, 416, 418, 422, 423, 428, 432, 434, 437, 438, 440, 441, 442, 443, 455, 460, 462, 468, 470, 474, 477, 479, 481, 488, 489, 491, 492, 493, 496, 498, 499, 501, 502, 503, 506, 509], [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 21, 22, 23, 29, 31, 33, 34, 36, 37, 38, 39, 42, 48, 50, 51, 52, 53, 58, 60, 62, 63, 64, 66, 67, 68, 69, 71, 74, 75, 76, 78, 80, 82, 83, 84, 86, 87, 90, 91, 93, 96, 97, 98, 107, 108, 109, 110, 111, 112, 115, 116, 117, 120, 127, 130, 134, 136, 139, 140, 141, 144, 145, 147, 148, 150, 151, 153, 154, 155, 160, 162, 165, 167, 168, 169, 172, 173, 174, 177, 178, 180, 182, 185, 186, 187, 188, 189, 191, 197, 198, 202, 206, 208, 216, 218, 219, 221, 223, 226, 227, 228, 230, 231, 233, 234, 235, 236, 238, 240, 242, 243, 246, 247, 248, 249, 251, 252, 253, 254, 258, 261, 264, 265, 266, 267, 269, 272, 277, 278, 280, 281, 284, 286, 287, 288, 289, 294, 299, 301, 302, 303, 304, 305, 306, 307, 312, 313, 315, 317, 319, 323, 326, 327, 331, 332, 338, 340, 342, 343, 345, 346, 347, 349, 351, 352, 356, 360, 362, 363, 366, 367, 368, 369, 371, 372, 374, 377, 378, 379, 380, 382, 386, 388, 390, 392, 393, 395, 396, 399, 400, 401, 404, 406, 408, 409, 410, 412, 413, 416, 417, 419, 422, 425, 426, 429, 430, 432, 433, 434, 438, 440, 442, 443, 444, 445, 446, 448, 451, 453, 455, 456, 457, 459, 460, 463, 468, 469, 471, 472, 475, 484, 489, 491, 493, 494, 495, 497, 498, 499, 502, 503, 505, 508, 510], [0, 2, 3, 6, 7, 8, 9, 10, 13, 15, 16, 18, 21, 22, 24, 25, 26, 27, 29, 31, 32, 33, 34, 35, 40, 42, 48, 50, 52, 53, 55, 57, 59, 62, 64, 65, 70, 71, 72, 74, 76, 77, 81, 82, 87, 88, 91, 92, 93, 97, 98, 100, 102, 103, 106, 107, 108, 113, 114, 116, 118, 121, 122, 123, 124, 127, 128, 131, 136, 137, 138, 141, 142, 144, 146, 147, 148, 151, 152, 154, 155, 157, 159, 160, 167, 168, 169, 171, 172, 174, 175, 176, 177, 178, 179, 181, 182, 187, 189, 194, 195, 196, 201, 203, 204, 205, 208, 210, 211, 212, 214, 215, 220, 222, 225, 227, 232, 233, 234, 235, 237, 239, 240, 241, 243, 244, 246, 248, 250, 253, 257, 258, 259, 261, 264, 265, 266, 267, 270, 273, 274, 276, 277, 278, 279, 283, 286, 287, 288, 290, 291, 292, 293, 298, 299, 302, 303, 304, 305, 307, 309, 312, 313, 316, 317, 322, 323, 324, 326, 328, 329, 330, 332, 333, 334, 335, 336, 339, 343, 344, 346, 347, 348, 350, 351, 355, 356, 359, 364, 365, 367, 370, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 384, 385, 387, 389, 390, 391, 395, 397, 398, 405, 406, 409, 412, 415, 416, 419, 420, 421, 422, 424, 425, 427, 433, 435, 436, 438, 445, 450, 453, 457, 459, 461, 463, 470, 471, 472, 473, 474, 480, 481, 485, 486, 487, 488, 491, 493, 497, 499, 501, 503, 506, 510, 511], [0, 1, 3, 4, 13, 14, 15, 16, 17, 18, 19, 22, 23, 28, 30, 32, 33, 34, 35, 38, 41, 42, 43, 44, 45, 46, 47, 48, 50, 54, 55, 56, 58, 59, 60, 64, 65, 67, 69, 70, 73, 74, 76, 77, 78, 79, 80, 82, 84, 85, 86, 88, 90, 91, 92, 94, 95, 97, 99, 101, 102, 103, 104, 106, 109, 110, 113, 119, 126, 130, 132, 133, 135, 138, 141, 142, 144, 145, 147, 149, 150, 153, 154, 157, 159, 160, 162, 163, 164, 166, 167, 169, 170, 171, 172, 173, 175, 177, 181, 185, 186, 187, 188, 190, 194, 195, 196, 197, 199, 200, 202, 203, 206, 207, 210, 211, 212, 213, 215, 216, 218, 223, 226, 227, 231, 233, 234, 236, 238, 239, 243, 246, 247, 249, 250, 253, 254, 256, 258, 259, 260, 263, 264, 267, 268, 269, 271, 272, 273, 280, 281, 283, 286, 287, 289, 290, 291, 295, 297, 298, 299, 300, 302, 305, 309, 311, 315, 318, 320, 322, 324, 327, 330, 338, 341, 344, 345, 346, 347, 348, 350, 351, 352, 353, 354, 356, 361, 362, 364, 368, 370, 374, 376, 377, 381, 387, 389, 391, 392, 394, 396, 398, 399, 400, 402, 404, 405, 406, 408, 409, 410, 412, 415, 419, 420, 421, 423, 424, 425, 429, 436, 439, 441, 442, 443, 444, 448, 449, 450, 453, 456, 457, 459, 460, 461, 462, 465, 468, 470, 471, 472, 474, 476, 478, 479, 481, 484, 486, 489, 496, 497, 500, 503, 504, 505, 506], [0, 2, 6, 9, 10, 12, 13, 14, 15, 19, 20, 21, 23, 25, 26, 28, 30, 32, 35, 36, 37, 39, 45, 50, 51, 52, 53, 58, 59, 61, 63, 64, 66, 69, 73, 74, 77, 78, 79, 84, 87, 89, 92, 96, 97, 98, 99, 100, 104, 105, 108, 109, 110, 111, 112, 114, 115, 117, 118, 119, 121, 122, 124, 125, 127, 130, 131, 132, 134, 135, 140, 143, 145, 146, 149, 150, 152, 154, 156, 157, 160, 161, 163, 164, 166, 168, 169, 171, 172, 178, 182, 184, 185, 187, 190, 191, 192, 193, 194, 197, 199, 205, 206, 207, 209, 211, 212, 213, 214, 219, 220, 221, 224, 225, 226, 227, 228, 230, 234, 236, 238, 242, 243, 245, 246, 250, 251, 253, 256, 259, 261, 265, 266, 267, 268, 269, 270, 272, 275, 279, 280, 283, 285, 286, 287, 289, 294, 295, 297, 300, 302, 305, 306, 308, 309, 311, 313, 314, 316, 317, 318, 319, 320, 321, 323, 324, 327, 329, 330, 332, 335, 339, 340, 343, 344, 346, 347, 350, 351, 352, 354, 361, 364, 365, 366, 369, 373, 374, 375, 378, 379, 380, 381, 383, 388, 389, 392, 393, 394, 395, 401, 403, 406, 407, 408, 409, 414, 415, 416, 417, 420, 421, 423, 426, 427, 429, 431, 433, 434, 436, 439, 443, 454, 456, 458, 459, 460, 461, 465, 466, 467, 469, 471, 473, 474, 475, 478, 480, 482, 483, 487, 488, 489, 490, 491, 492, 494, 495, 496, 500, 501, 502, 504, 506, 509, 510], [0, 1, 3, 4, 5, 7, 9, 11, 12, 14, 15, 16, 22, 23, 24, 25, 26, 28, 30, 34, 35, 39, 40, 41, 47, 48, 50, 51, 52, 53, 54, 57, 58, 61, 62, 63, 67, 68, 69, 70, 72, 74, 76, 79, 80, 82, 83, 86, 87, 88, 89, 90, 91, 92, 97, 99, 101, 102, 104, 106, 108, 112, 113, 115, 116, 120, 123, 129, 130, 133, 135, 136, 138, 140, 144, 146, 150, 151, 155, 157, 160, 161, 162, 166, 167, 168, 169, 170, 171, 173, 174, 175, 178, 179, 181, 182, 183, 185, 186, 187, 188, 189, 190, 191, 192, 193, 199, 201, 203, 204, 206, 207, 208, 219, 220, 222, 224, 225, 227, 228, 229, 231, 233, 239, 240, 243, 244, 245, 246, 249, 250, 251, 252, 258, 260, 262, 263, 267, 270, 271, 272, 273, 274, 278, 279, 282, 283, 286, 287, 289, 290, 293, 295, 297, 298, 299, 303, 304, 311, 312, 314, 315, 316, 320, 322, 325, 326, 331, 333, 337, 338, 340, 342, 343, 345, 348, 349, 351, 352, 355, 357, 360, 368, 369, 370, 373, 374, 376, 380, 386, 387, 391, 392, 393, 394, 395, 396, 398, 402, 405, 406, 407, 411, 415, 417, 418, 419, 420, 421, 422, 423, 425, 427, 428, 429, 432, 433, 434, 436, 438, 439, 440, 441, 442, 443, 444, 451, 453, 455, 456, 457, 459, 460, 462, 463, 465, 466, 467, 471, 476, 477, 478, 480, 482, 486, 487, 489, 491, 495, 500, 501, 503, 505, 508, 509, 511], [0, 2, 4, 5, 6, 9, 13, 14, 16, 17, 22, 23, 24, 25, 26, 27, 31, 34, 35, 36, 37, 38, 39, 41, 42, 44, 47, 49, 50, 52, 54, 56, 58, 62, 63, 64, 66, 68, 70, 72, 73, 75, 78, 79, 81, 82, 83, 84, 85, 86, 87, 90, 91, 92, 93, 99, 101, 102, 105, 106, 107, 109, 110, 111, 113, 117, 120, 122, 124, 128, 129, 131, 132, 133, 134, 136, 137, 141, 145, 147, 154, 156, 159, 160, 163, 165, 169, 170, 172, 173, 175, 176, 177, 178, 179, 182, 186, 187, 190, 193, 194, 201, 205, 207, 208, 209, 210, 211, 214, 215, 219, 221, 222, 226, 236, 238, 239, 240, 242, 243, 244, 245, 246, 248, 249, 252, 254, 256, 259, 260, 261, 263, 264, 266, 268, 276, 277, 282, 284, 285, 286, 288, 289, 294, 296, 299, 301, 302, 305, 309, 310, 312, 313, 315, 319, 322, 323, 324, 325, 326, 327, 328, 329, 331, 335, 336, 338, 343, 346, 347, 348, 349, 350, 353, 354, 355, 357, 359, 362, 363, 365, 367, 368, 371, 372, 374, 377, 378, 379, 380, 381, 382, 385, 386, 387, 389, 391, 392, 394, 397, 398, 399, 401, 402, 403, 404, 405, 407, 410, 411, 412, 414, 415, 418, 419, 420, 422, 423, 425, 426, 429, 430, 432, 436, 440, 444, 448, 449, 451, 452, 453, 454, 455, 457, 458, 460, 461, 462, 463, 465, 466, 467, 469, 474, 475, 477, 486, 487, 490, 494, 495, 497, 499, 500, 506, 508], [1, 3, 5, 6, 10, 11, 12, 13, 15, 18, 19, 21, 22, 25, 28, 29, 33, 36, 39, 42, 43, 44, 47, 48, 49, 50, 51, 53, 54, 55, 58, 61, 62, 63, 66, 67, 68, 69, 70, 71, 72, 73, 75, 76, 79, 80, 82, 84, 85, 87, 88, 91, 92, 93, 96, 98, 103, 105, 106, 107, 108, 111, 115, 116, 117, 119, 120, 121, 122, 127, 130, 132, 133, 137, 139, 140, 141, 142, 144, 152, 153, 156, 157, 160, 164, 166, 167, 168, 169, 170, 172, 173, 174, 176, 178, 179, 180, 183, 184, 185, 193, 194, 196, 197, 200, 201, 204, 206, 207, 209, 211, 213, 216, 218, 219, 220, 221, 223, 224, 227, 229, 233, 235, 238, 241, 246, 249, 251, 255, 258, 260, 261, 264, 265, 266, 271, 277, 279, 280, 281, 282, 283, 284, 285, 286, 287, 294, 296, 298, 299, 303, 304, 305, 306, 307, 308, 310, 316, 318, 319, 320, 321, 324, 327, 329, 330, 331, 332, 336, 337, 338, 340, 341, 342, 343, 344, 347, 350, 357, 358, 359, 362, 363, 366, 369, 370, 373, 374, 378, 379, 380, 381, 383, 384, 385, 386, 388, 390, 394, 395, 397, 399, 402, 403, 405, 407, 408, 411, 416, 417, 418, 419, 422, 425, 428, 432, 434, 435, 436, 437, 441, 442, 443, 447, 450, 453, 457, 458, 459, 461, 463, 464, 468, 471, 472, 475, 477, 478, 480, 483, 484, 485, 486, 487, 491, 494, 496, 497, 498, 500, 501, 503, 504, 506, 510, 511], [1, 3, 6, 7, 9, 10, 14, 15, 16, 18, 19, 20, 21, 22, 23, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40, 41, 45, 47, 48, 51, 53, 55, 56, 57, 61, 62, 63, 64, 65, 66, 67, 73, 74, 76, 77, 78, 80, 81, 82, 86, 87, 90, 91, 94, 96, 97, 100, 101, 102, 104, 106, 108, 110, 111, 112, 113, 114, 118, 119, 122, 123, 124, 126, 127, 129, 130, 133, 134, 135, 136, 138, 139, 140, 141, 143, 144, 145, 147, 148, 152, 155, 156, 158, 160, 161, 162, 163, 164, 165, 166, 167, 169, 171, 172, 173, 174, 175, 178, 179, 183, 184, 187, 189, 190, 192, 194, 195, 199, 203, 204, 209, 210, 211, 213, 220, 221, 222, 223, 224, 225, 227, 229, 232, 234, 238, 241, 242, 246, 247, 248, 249, 250, 253, 254, 255, 257, 259, 262, 263, 264, 273, 275, 278, 279, 285, 286, 288, 291, 292, 294, 296, 301, 305, 306, 307, 308, 309, 311, 313, 314, 316, 321, 322, 327, 329, 330, 331, 332, 335, 337, 342, 347, 348, 349, 356, 359, 362, 364, 365, 367, 369, 370, 371, 372, 373, 374, 376, 377, 378, 379, 383, 384, 385, 389, 392, 395, 396, 398, 403, 407, 408, 410, 411, 414, 420, 421, 426, 429, 430, 431, 432, 434, 438, 445, 447, 448, 449, 450, 452, 453, 454, 456, 461, 463, 468, 469, 472, 479, 480, 482, 483, 484, 485, 491, 494, 496, 497, 498, 502, 503, 504, 505, 506, 507, 508], [2, 5, 8, 10, 11, 13, 15, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 41, 42, 43, 44, 45, 46, 47, 48, 49, 51, 52, 54, 55, 56, 57, 58, 59, 60, 63, 64, 66, 69, 73, 75, 76, 78, 79, 81, 82, 86, 88, 89, 90, 91, 92, 93, 94, 95, 97, 99, 102, 103, 105, 108, 109, 112, 113, 114, 117, 119, 121, 122, 124, 125, 127, 128, 130, 132, 134, 136, 137, 138, 139, 140, 141, 143, 145, 147, 149, 151, 154, 156, 160, 162, 164, 170, 172, 173, 174, 175, 176, 177, 184, 190, 191, 193, 197, 198, 200, 203, 204, 206, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 222, 223, 225, 226, 227, 228, 235, 236, 237, 238, 241, 244, 247, 248, 249, 251, 252, 256, 258, 260, 263, 265, 272, 273, 274, 278, 282, 283, 284, 285, 288, 289, 290, 292, 296, 297, 298, 303, 305, 308, 311, 315, 318, 319, 320, 321, 322, 323, 325, 326, 327, 328, 330, 331, 332, 335, 338, 339, 340, 343, 344, 345, 347, 348, 349, 352, 356, 359, 360, 365, 366, 368, 369, 371, 373, 374, 379, 386, 388, 390, 391, 397, 399, 401, 402, 404, 409, 410, 413, 414, 415, 416, 422, 423, 426, 428, 431, 432, 433, 436, 437, 440, 441, 445, 447, 448, 449, 450, 451, 453, 455, 456, 457, 459, 461, 464, 465, 466, 468, 469, 475, 476, 478, 483, 485, 488, 490, 491, 494, 497, 506, 507, 508, 509, 510, 511], [2, 3, 6, 11, 12, 15, 16, 17, 18, 21, 22, 23, 27, 28, 29, 30, 32, 33, 38, 40, 42, 43, 44, 45, 48, 49, 53, 54, 56, 58, 59, 61, 67, 68, 69, 70, 71, 74, 76, 77, 78, 81, 82, 83, 84, 86, 87, 88, 91, 92, 94, 95, 96, 97, 98, 100, 101, 102, 103, 104, 105, 106, 107, 111, 113, 115, 116, 118, 119, 125, 129, 131, 136, 138, 139, 145, 146, 147, 148, 150, 151, 152, 153, 154, 155, 158, 160, 162, 163, 164, 166, 167, 168, 170, 172, 175, 178, 180, 183, 189, 191, 199, 201, 204, 206, 207, 208, 212, 213, 214, 216, 218, 219, 220, 221, 222, 223, 225, 229, 231, 233, 234, 236, 237, 239, 240, 242, 243, 245, 246, 247, 248, 250, 252, 255, 257, 264, 266, 268, 270, 271, 272, 275, 277, 279, 280, 281, 282, 286, 287, 288, 290, 292, 295, 298, 299, 301, 302, 304, 305, 307, 311, 312, 314, 317, 318, 319, 320, 324, 326, 327, 331, 332, 333, 334, 337, 338, 340, 345, 347, 350, 351, 355, 358, 360, 364, 370, 371, 372, 373, 377, 378, 379, 380, 381, 384, 388, 391, 392, 393, 394, 396, 398, 399, 400, 401, 404, 407, 409, 410, 411, 412, 413, 414, 417, 418, 419, 422, 425, 432, 433, 434, 435, 436, 438, 441, 442, 446, 451, 452, 453, 454, 456, 457, 458, 459, 461, 464, 465, 466, 470, 474, 478, 479, 480, 487, 488, 496, 499, 500, 501, 502, 503, 504, 506, 510], [1, 4, 5, 6, 8, 10, 11, 12, 15, 16, 17, 18, 20, 21, 23, 24, 29, 30, 32, 33, 35, 36, 39, 40, 41, 42, 43, 46, 48, 49, 50, 51, 52, 53, 56, 57, 59, 60, 61, 62, 64, 65, 66, 67, 69, 71, 74, 75, 77, 78, 81, 82, 86, 87, 92, 93, 95, 99, 100, 101, 102, 104, 107, 111, 112, 113, 120, 121, 123, 124, 125, 126, 133, 134, 136, 138, 140, 142, 145, 146, 148, 149, 150, 151, 152, 153, 156, 157, 158, 159, 160, 162, 163, 164, 165, 166, 171, 174, 175, 177, 178, 181, 186, 187, 188, 189, 190, 192, 193, 196, 197, 201, 205, 210, 212, 215, 216, 221, 223, 224, 225, 229, 230, 232, 235, 237, 238, 241, 242, 246, 249, 250, 252, 253, 255, 256, 259, 261, 265, 269, 270, 273, 275, 276, 281, 282, 283, 287, 290, 293, 294, 295, 297, 298, 299, 302, 303, 305, 306, 307, 309, 312, 313, 316, 317, 318, 320, 321, 325, 326, 328, 334, 336, 338, 339, 340, 342, 343, 345, 348, 349, 355, 357, 358, 366, 369, 373, 374, 377, 379, 381, 384, 385, 386, 387, 390, 391, 400, 401, 402, 404, 405, 408, 413, 414, 415, 416, 417, 418, 419, 420, 422, 423, 424, 426, 428, 429, 430, 432, 434, 435, 437, 438, 440, 441, 444, 449, 452, 453, 456, 457, 461, 462, 463, 465, 467, 468, 469, 470, 471, 472, 479, 481, 482, 483, 487, 489, 490, 493, 495, 499, 500, 503, 504, 509, 511], [0, 1, 3, 4, 6, 7, 11, 12, 16, 18, 20, 24, 25, 26, 27, 28, 32, 33, 34, 35, 39, 41, 42, 43, 45, 46, 50, 52, 53, 55, 56, 59, 63, 66, 67, 68, 69, 70, 72, 73, 74, 75, 78, 81, 82, 83, 84, 85, 87, 95, 96, 97, 99, 100, 101, 105, 107, 111, 114, 117, 118, 119, 120, 121, 124, 125, 126, 128, 135, 137, 139, 141, 142, 144, 145, 146, 155, 156, 162, 167, 168, 172, 174, 176, 177, 179, 180, 181, 183, 185, 188, 191, 193, 197, 198, 199, 200, 201, 202, 205, 206, 208, 209, 210, 211, 214, 217, 220, 221, 222, 223, 224, 226, 227, 231, 235, 237, 238, 239, 242, 245, 246, 247, 250, 251, 256, 257, 259, 260, 261, 262, 263, 265, 267, 268, 269, 271, 277, 279, 281, 283, 284, 285, 288, 290, 291, 292, 293, 294, 295, 296, 298, 303, 304, 306, 308, 311, 313, 314, 316, 317, 326, 327, 328, 332, 333, 334, 335, 336, 339, 342, 344, 345, 346, 347, 349, 350, 353, 354, 355, 356, 357, 361, 363, 366, 367, 368, 371, 372, 373, 376, 377, 379, 381, 382, 383, 385, 386, 387, 390, 391, 394, 395, 397, 398, 401, 402, 404, 410, 411, 412, 413, 414, 416, 417, 419, 421, 424, 425, 429, 430, 431, 432, 434, 438, 440, 442, 443, 450, 452, 459, 461, 464, 467, 468, 472, 474, 476, 477, 478, 479, 480, 482, 484, 486, 488, 493, 496, 498, 499, 500, 503, 506, 508, 509, 511], [1, 2, 3, 4, 6, 11, 13, 14, 20, 26, 27, 30, 31, 32, 34, 35, 38, 39, 40, 41, 43, 44, 46, 48, 49, 50, 53, 54, 59, 60, 61, 62, 63, 64, 65, 66, 68, 70, 74, 76, 77, 81, 83, 86, 87, 88, 89, 93, 94, 97, 100, 104, 105, 109, 110, 111, 113, 115, 116, 119, 123, 124, 126, 127, 129, 133, 135, 138, 140, 143, 144, 145, 146, 149, 151, 153, 154, 155, 158, 160, 163, 164, 167, 169, 170, 171, 173, 174, 175, 176, 177, 178, 181, 182, 184, 185, 189, 191, 195, 198, 199, 201, 204, 206, 207, 208, 210, 212, 215, 216, 217, 220, 221, 222, 225, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 242, 244, 247, 252, 253, 258, 260, 261, 262, 268, 273, 275, 276, 277, 278, 280, 281, 283, 289, 292, 295, 297, 299, 301, 304, 307, 308, 311, 313, 314, 316, 317, 319, 320, 321, 322, 323, 324, 325, 326, 327, 329, 331, 333, 334, 335, 337, 339, 341, 345, 346, 347, 350, 351, 353, 354, 355, 356, 357, 361, 366, 369, 370, 371, 375, 376, 378, 382, 383, 386, 387, 389, 391, 394, 397, 398, 399, 402, 405, 408, 412, 419, 420, 421, 422, 424, 425, 427, 429, 433, 439, 442, 446, 447, 448, 449, 450, 451, 454, 456, 458, 461, 462, 463, 469, 470, 471, 477, 480, 481, 482, 483, 485, 487, 488, 491, 493, 496, 498, 499, 500, 501, 502, 503, 504, 505, 507, 508, 509, 510], [0, 1, 2, 3, 4, 5, 8, 10, 13, 14, 16, 17, 18, 19, 20, 23, 25, 26, 29, 30, 31, 32, 34, 35, 36, 38, 39, 40, 45, 46, 48, 49, 50, 52, 54, 55, 56, 57, 58, 62, 63, 66, 67, 68, 70, 71, 76, 77, 78, 79, 83, 86, 88, 89, 90, 92, 95, 96, 98, 109, 110, 111, 113, 117, 120, 122, 126, 127, 129, 130, 132, 133, 134, 137, 139, 140, 141, 144, 145, 146, 148, 152, 153, 154, 155, 157, 158, 159, 160, 161, 162, 163, 166, 167, 168, 170, 171, 172, 175, 180, 183, 184, 187, 190, 191, 192, 194, 195, 198, 200, 201, 204, 205, 206, 208, 210, 212, 213, 217, 219, 221, 222, 228, 232, 237, 238, 239, 242, 243, 246, 247, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 266, 269, 272, 273, 280, 281, 282, 283, 284, 286, 293, 294, 295, 296, 297, 300, 301, 302, 304, 305, 306, 309, 310, 311, 313, 316, 319, 321, 326, 327, 328, 329, 332, 333, 334, 335, 337, 339, 340, 343, 346, 347, 348, 349, 354, 356, 357, 358, 359, 361, 366, 367, 369, 372, 376, 377, 380, 382, 391, 395, 396, 397, 398, 399, 400, 404, 406, 410, 412, 414, 419, 421, 422, 423, 424, 426, 428, 429, 431, 432, 434, 436, 440, 441, 442, 443, 447, 451, 455, 456, 457, 459, 464, 465, 466, 467, 471, 476, 477, 481, 483, 484, 486, 493, 494, 496, 498, 499, 502, 506, 508, 509, 510, 511], [0, 1, 2, 3, 5, 6, 7, 9, 10, 12, 17, 19, 20, 23, 25, 26, 27, 28, 30, 31, 32, 38, 42, 45, 46, 47, 48, 49, 50, 51, 52, 55, 56, 60, 61, 65, 66, 69, 71, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 92, 95, 98, 99, 100, 102, 104, 105, 106, 107, 108, 111, 113, 114, 115, 117, 119, 123, 125, 126, 129, 131, 136, 137, 138, 142, 143, 144, 146, 152, 153, 154, 157, 159, 160, 161, 162, 163, 164, 169, 172, 173, 174, 175, 177, 178, 179, 180, 181, 182, 186, 188, 189, 190, 191, 194, 195, 198, 203, 206, 208, 209, 210, 212, 213, 214, 217, 219, 220, 222, 223, 225, 227, 231, 232, 233, 234, 236, 237, 238, 239, 240, 243, 245, 248, 251, 252, 253, 258, 265, 267, 268, 269, 270, 272, 273, 274, 275, 276, 279, 280, 281, 282, 285, 291, 293, 296, 297, 298, 299, 307, 308, 311, 314, 315, 317, 320, 321, 324, 325, 326, 330, 332, 335, 340, 345, 346, 347, 348, 349, 350, 353, 359, 361, 362, 364, 365, 366, 367, 370, 371, 373, 374, 378, 380, 381, 384, 385, 391, 393, 398, 399, 400, 401, 402, 403, 409, 410, 415, 424, 425, 427, 430, 431, 434, 437, 440, 441, 442, 444, 445, 446, 448, 449, 450, 453, 458, 461, 462, 463, 468, 469, 472, 474, 480, 483, 484, 485, 487, 488, 489, 490, 492, 493, 494, 496, 497, 498, 499, 501, 503, 505, 506, 509, 511], [0, 1, 2, 3, 5, 7, 10, 11, 12, 14, 16, 17, 19, 23, 28, 29, 30, 31, 32, 34, 35, 36, 38, 39, 45, 46, 49, 50, 53, 58, 59, 62, 65, 66, 67, 68, 69, 71, 72, 73, 74, 76, 77, 78, 81, 82, 83, 84, 86, 87, 88, 91, 93, 94, 95, 96, 98, 99, 103, 108, 109, 110, 111, 113, 114, 115, 116, 117, 120, 121, 123, 124, 125, 127, 129, 131, 133, 135, 137, 139, 140, 141, 142, 144, 148, 150, 153, 156, 157, 159, 163, 165, 170, 171, 175, 177, 179, 181, 184, 185, 186, 188, 189, 194, 196, 197, 199, 200, 201, 203, 205, 206, 208, 211, 212, 215, 216, 218, 223, 224, 225, 229, 230, 231, 232, 233, 234, 236, 238, 239, 242, 243, 246, 248, 250, 251, 255, 256, 258, 260, 261, 264, 267, 268, 270, 271, 273, 276, 277, 279, 283, 284, 288, 291, 293, 294, 295, 296, 298, 300, 301, 304, 306, 308, 310, 311, 312, 320, 321, 322, 324, 325, 326, 327, 329, 330, 331, 334, 335, 336, 339, 340, 342, 346, 349, 350, 352, 353, 354, 356, 358, 360, 362, 363, 365, 367, 369, 371, 374, 375, 376, 378, 380, 381, 382, 383, 386, 387, 390, 392, 395, 397, 398, 399, 403, 406, 408, 410, 412, 413, 415, 416, 422, 423, 424, 428, 430, 432, 433, 434, 437, 438, 443, 444, 454, 460, 462, 463, 465, 468, 471, 474, 477, 480, 489, 491, 492, 493, 496, 498, 499, 501, 502, 506, 509, 511], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 18, 21, 22, 23, 24, 29, 30, 31, 32, 33, 34, 36, 37, 39, 42, 48, 51, 52, 53, 58, 60, 62, 63, 64, 66, 67, 68, 69, 71, 74, 75, 76, 78, 80, 83, 86, 90, 91, 93, 94, 96, 98, 106, 107, 108, 109, 110, 111, 112, 115, 117, 119, 125, 127, 130, 134, 136, 139, 140, 141, 145, 147, 148, 150, 152, 153, 154, 155, 160, 167, 169, 172, 173, 174, 175, 177, 178, 180, 182, 185, 186, 187, 188, 189, 190, 191, 192, 197, 202, 206, 208, 211, 214, 216, 219, 221, 223, 226, 227, 228, 230, 231, 232, 233, 235, 236, 240, 242, 243, 246, 247, 248, 249, 251, 252, 253, 254, 258, 261, 264, 265, 267, 269, 273, 274, 277, 278, 280, 281, 284, 286, 287, 288, 290, 294, 297, 299, 301, 302, 303, 304, 305, 306, 307, 312, 313, 315, 317, 318, 319, 322, 326, 327, 331, 332, 334, 335, 338, 340, 342, 343, 345, 346, 349, 350, 351, 352, 356, 360, 363, 366, 367, 368, 369, 371, 372, 374, 377, 378, 380, 382, 386, 388, 390, 392, 393, 395, 396, 399, 400, 401, 406, 407, 408, 409, 412, 413, 414, 419, 422, 426, 429, 430, 431, 433, 436, 438, 439, 440, 442, 443, 445, 446, 448, 452, 453, 455, 456, 459, 460, 462, 463, 464, 468, 471, 476, 484, 487, 488, 489, 491, 494, 495, 497, 498, 499, 502, 503, 505, 506, 508, 511], [2, 4, 6, 7, 9, 10, 15, 16, 18, 19, 21, 22, 23, 24, 25, 26, 29, 31, 33, 34, 37, 40, 42, 46, 50, 52, 53, 55, 58, 59, 60, 62, 64, 65, 71, 72, 74, 76, 81, 82, 83, 84, 85, 87, 88, 91, 92, 93, 97, 102, 103, 105, 107, 108, 112, 113, 114, 116, 120, 122, 123, 124, 127, 128, 129, 131, 135, 136, 137, 138, 140, 141, 142, 144, 146, 147, 148, 151, 152, 154, 155, 157, 159, 160, 161, 167, 168, 169, 171, 172, 175, 176, 177, 178, 179, 184, 187, 189, 190, 194, 195, 196, 198, 200, 203, 205, 208, 209, 210, 211, 212, 213, 214, 220, 226, 233, 235, 239, 240, 242, 244, 246, 247, 248, 250, 253, 257, 259, 261, 264, 265, 268, 270, 273, 274, 276, 277, 278, 279, 283, 286, 287, 288, 290, 291, 293, 296, 299, 302, 303, 304, 305, 307, 309, 310, 312, 313, 314, 316, 318, 322, 323, 324, 326, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 339, 342, 343, 344, 346, 347, 350, 351, 352, 355, 356, 359, 364, 365, 367, 370, 372, 376, 377, 378, 379, 380, 381, 382, 385, 387, 389, 390, 393, 395, 397, 398, 401, 402, 405, 406, 407, 409, 411, 412, 414, 415, 419, 420, 421, 422, 424, 425, 426, 427, 433, 435, 438, 443, 445, 449, 450, 453, 456, 457, 461, 463, 469, 471, 473, 474, 475, 480, 481, 484, 485, 486, 488, 491, 493, 497, 499, 501, 503, 504, 506, 511], [0, 1, 3, 4, 5, 6, 12, 13, 14, 15, 16, 17, 18, 19, 20, 28, 30, 32, 34, 35, 38, 42, 43, 44, 45, 46, 47, 50, 54, 56, 57, 58, 59, 64, 65, 69, 70, 71, 73, 74, 76, 78, 79, 80, 82, 85, 86, 88, 90, 91, 92, 94, 95, 97, 99, 101, 102, 103, 105, 106, 110, 112, 113, 114, 124, 125, 128, 130, 131, 132, 133, 135, 136, 138, 139, 140, 141, 142, 145, 147, 149, 150, 153, 154, 157, 159, 160, 161, 162, 163, 164, 166, 167, 169, 170, 172, 173, 175, 177, 181, 185, 186, 187, 188, 191, 193, 194, 196, 200, 202, 204, 206, 207, 211, 212, 215, 218, 223, 226, 227, 230, 231, 233, 234, 236, 238, 241, 243, 246, 247, 249, 250, 253, 254, 256, 258, 262, 263, 264, 267, 268, 269, 271, 272, 274, 278, 279, 280, 281, 283, 284, 286, 288, 289, 290, 291, 294, 297, 298, 299, 300, 302, 305, 309, 311, 314, 317, 318, 319, 320, 321, 322, 323, 324, 327, 329, 330, 334, 341, 344, 345, 347, 348, 350, 352, 356, 361, 362, 364, 368, 370, 374, 377, 383, 387, 389, 391, 392, 394, 396, 399, 401, 402, 404, 405, 408, 409, 410, 411, 415, 419, 420, 421, 422, 423, 424, 425, 427, 428, 429, 436, 438, 439, 441, 442, 444, 447, 448, 449, 450, 453, 457, 460, 461, 462, 465, 468, 470, 471, 472, 474, 476, 478, 479, 485, 486, 489, 496, 497, 500, 503, 504, 505, 506, 508, 509], [0, 2, 6, 9, 10, 12, 14, 15, 19, 20, 21, 23, 25, 26, 28, 30, 32, 34, 35, 36, 37, 39, 44, 45, 51, 52, 53, 58, 59, 64, 65, 66, 67, 69, 70, 73, 74, 77, 78, 79, 84, 87, 89, 92, 95, 96, 98, 99, 100, 104, 108, 109, 110, 111, 114, 115, 117, 118, 119, 121, 122, 124, 125, 127, 130, 131, 132, 135, 137, 140, 143, 145, 146, 149, 150, 152, 154, 156, 157, 160, 161, 164, 166, 168, 169, 171, 172, 178, 182, 184, 185, 190, 191, 192, 193, 194, 195, 199, 204, 205, 206, 209, 211, 213, 214, 219, 220, 221, 224, 225, 226, 227, 228, 230, 231, 236, 238, 242, 243, 245, 246, 250, 251, 253, 256, 259, 261, 264, 265, 266, 267, 268, 269, 270, 272, 275, 279, 285, 286, 287, 289, 294, 295, 297, 300, 302, 305, 306, 308, 309, 311, 313, 314, 316, 317, 318, 319, 320, 321, 323, 324, 325, 327, 329, 330, 332, 340, 343, 344, 346, 347, 350, 351, 352, 354, 356, 361, 364, 365, 366, 369, 373, 374, 375, 378, 379, 380, 381, 383, 388, 389, 390, 391, 392, 393, 394, 395, 397, 401, 402, 403, 406, 407, 408, 409, 414, 415, 416, 417, 420, 421, 422, 423, 426, 427, 429, 431, 433, 436, 439, 443, 449, 454, 456, 458, 459, 460, 461, 465, 466, 467, 469, 471, 473, 475, 478, 479, 480, 482, 483, 487, 488, 489, 490, 491, 492, 494, 495, 496, 500, 501, 502, 504, 506, 509, 510], [0, 3, 4, 5, 7, 8, 9, 11, 12, 15, 16, 20, 22, 23, 24, 25, 26, 28, 30, 34, 37, 39, 40, 41, 47, 48, 50, 51, 52, 53, 54, 57, 58, 61, 62, 63, 67, 68, 69, 70, 72, 74, 76, 79, 82, 83, 86, 87, 88, 89, 90, 91, 92, 94, 96, 97, 99, 101, 102, 104, 106, 108, 109, 112, 113, 115, 116, 120, 127, 130, 133, 135, 136, 138, 140, 144, 148, 150, 151, 152, 155, 157, 160, 161, 162, 166, 167, 168, 169, 171, 173, 174, 175, 178, 179, 181, 182, 185, 186, 187, 188, 189, 190, 191, 192, 193, 196, 199, 201, 203, 204, 206, 207, 208, 210, 219, 220, 222, 224, 225, 227, 228, 229, 231, 233, 236, 239, 243, 244, 245, 246, 250, 251, 252, 255, 258, 260, 262, 263, 265, 267, 269, 270, 271, 272, 273, 274, 278, 279, 282, 283, 286, 289, 290, 293, 295, 296, 298, 299, 303, 311, 312, 314, 315, 316, 320, 322, 325, 326, 331, 333, 334, 337, 338, 340, 342, 343, 345, 348, 349, 351, 352, 354, 355, 357, 359, 360, 368, 369, 370, 374, 376, 380, 386, 387, 391, 392, 394, 395, 396, 397, 398, 402, 405, 406, 407, 411, 415, 417, 419, 420, 421, 422, 423, 424, 425, 427, 428, 429, 432, 433, 434, 438, 439, 440, 441, 442, 443, 444, 446, 451, 453, 454, 455, 456, 460, 463, 465, 466, 467, 471, 477, 478, 480, 482, 483, 486, 489, 491, 495, 500, 501, 503, 508, 509, 511], [0, 2, 5, 9, 13, 14, 16, 17, 22, 23, 24, 26, 27, 31, 33, 34, 35, 37, 38, 41, 42, 43, 44, 47, 49, 50, 51, 52, 54, 56, 58, 59, 61, 62, 63, 64, 65, 67, 68, 70, 71, 72, 73, 75, 78, 79, 81, 82, 83, 84, 85, 86, 87, 90, 91, 92, 93, 96, 99, 101, 102, 103, 105, 107, 110, 113, 117, 118, 120, 122, 124, 129, 131, 132, 133, 134, 136, 137, 138, 141, 145, 147, 148, 154, 156, 159, 160, 163, 164, 165, 166, 169, 170, 172, 173, 175, 176, 177, 179, 182, 186, 187, 188, 191, 193, 194, 205, 207, 208, 209, 210, 211, 214, 219, 221, 224, 226, 236, 238, 239, 240, 243, 244, 246, 248, 252, 254, 255, 256, 259, 260, 263, 264, 266, 267, 270, 271, 276, 277, 278, 282, 285, 286, 288, 289, 293, 294, 296, 299, 301, 302, 305, 309, 310, 312, 313, 314, 315, 319, 321, 322, 324, 325, 326, 327, 329, 331, 334, 335, 336, 343, 346, 347, 348, 349, 350, 353, 354, 355, 359, 362, 363, 365, 367, 368, 371, 372, 375, 377, 378, 379, 380, 381, 382, 385, 386, 387, 389, 390, 391, 392, 394, 397, 398, 402, 403, 404, 405, 407, 411, 412, 414, 418, 419, 420, 422, 423, 425, 426, 429, 430, 440, 444, 448, 449, 451, 452, 453, 454, 455, 457, 458, 460, 461, 462, 463, 465, 466, 467, 468, 469, 474, 475, 482, 483, 484, 487, 490, 491, 497, 498, 499, 500, 506, 508, 511], [1, 3, 5, 6, 10, 11, 13, 15, 18, 19, 21, 22, 25, 28, 29, 33, 36, 37, 39, 42, 43, 44, 47, 49, 50, 51, 53, 54, 55, 57, 58, 59, 61, 62, 63, 66, 67, 69, 70, 71, 72, 73, 75, 76, 79, 80, 82, 84, 85, 87, 88, 92, 93, 96, 98, 101, 103, 105, 106, 107, 108, 109, 111, 115, 116, 117, 119, 120, 121, 122, 125, 127, 130, 132, 133, 137, 139, 140, 141, 142, 146, 152, 153, 156, 157, 160, 164, 166, 168, 169, 170, 172, 173, 174, 176, 178, 179, 183, 184, 185, 193, 194, 196, 197, 198, 200, 201, 204, 211, 212, 213, 216, 217, 218, 219, 220, 221, 224, 226, 229, 232, 233, 234, 235, 241, 244, 246, 249, 251, 255, 258, 260, 261, 264, 265, 266, 271, 272, 277, 279, 281, 282, 283, 286, 287, 292, 294, 296, 298, 303, 304, 305, 306, 307, 308, 310, 316, 318, 320, 321, 324, 326, 327, 329, 330, 331, 332, 333, 336, 337, 338, 340, 341, 342, 343, 344, 347, 350, 353, 358, 359, 362, 363, 366, 369, 370, 373, 374, 376, 378, 379, 380, 383, 384, 390, 394, 395, 397, 399, 402, 403, 405, 407, 408, 411, 414, 416, 418, 419, 422, 423, 428, 434, 435, 441, 442, 443, 447, 450, 453, 455, 457, 458, 459, 460, 461, 462, 463, 464, 468, 469, 471, 473, 474, 475, 477, 478, 480, 483, 485, 486, 487, 491, 493, 494, 496, 497, 498, 499, 500, 501, 503, 506, 509, 510, 511], [1, 3, 6, 7, 9, 10, 13, 14, 15, 16, 19, 20, 21, 22, 23, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40, 45, 46, 47, 48, 51, 55, 56, 57, 61, 62, 63, 65, 66, 67, 72, 73, 74, 76, 80, 86, 87, 90, 91, 92, 93, 94, 97, 100, 102, 104, 106, 108, 110, 111, 113, 114, 118, 122, 123, 124, 126, 127, 129, 130, 133, 134, 135, 136, 139, 141, 143, 144, 145, 148, 152, 155, 156, 157, 158, 160, 161, 163, 164, 167, 171, 172, 173, 174, 178, 179, 183, 184, 185, 187, 192, 193, 194, 195, 199, 202, 203, 204, 207, 208, 209, 210, 211, 212, 213, 217, 220, 221, 222, 223, 224, 225, 226, 227, 229, 232, 234, 236, 241, 242, 246, 247, 248, 249, 250, 253, 254, 255, 257, 259, 262, 263, 264, 265, 269, 273, 275, 277, 278, 279, 285, 286, 288, 289, 291, 292, 294, 296, 299, 301, 303, 304, 305, 306, 307, 308, 309, 311, 313, 314, 316, 322, 327, 329, 330, 334, 335, 337, 341, 342, 345, 347, 349, 350, 356, 359, 362, 363, 364, 365, 367, 369, 370, 371, 372, 373, 374, 376, 377, 378, 379, 383, 384, 385, 389, 392, 395, 396, 398, 399, 405, 406, 407, 408, 410, 411, 414, 420, 421, 426, 430, 431, 432, 434, 437, 438, 445, 447, 448, 449, 450, 452, 453, 454, 456, 461, 463, 465, 468, 469, 472, 474, 480, 482, 483, 484, 488, 494, 496, 498, 502, 503, 504, 505, 506, 507], [2, 4, 5, 8, 10, 11, 13, 15, 21, 23, 24, 25, 26, 27, 28, 29, 30, 34, 35, 36, 37, 41, 42, 43, 44, 46, 47, 48, 51, 52, 54, 55, 56, 57, 58, 59, 60, 63, 64, 65, 66, 69, 73, 75, 76, 78, 79, 81, 82, 88, 89, 90, 93, 94, 95, 97, 99, 102, 103, 105, 108, 109, 112, 114, 119, 121, 122, 124, 125, 127, 128, 130, 132, 134, 136, 137, 138, 139, 140, 141, 143, 144, 145, 148, 149, 151, 156, 160, 162, 164, 172, 173, 174, 175, 176, 177, 178, 180, 182, 184, 190, 191, 193, 194, 197, 198, 203, 204, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 222, 225, 226, 227, 228, 235, 236, 237, 238, 239, 241, 247, 248, 249, 251, 252, 256, 258, 260, 263, 265, 272, 273, 274, 275, 278, 282, 283, 284, 285, 288, 289, 290, 292, 296, 297, 298, 303, 311, 313, 315, 319, 320, 321, 322, 323, 325, 326, 327, 328, 330, 331, 332, 333, 335, 338, 339, 340, 343, 344, 345, 347, 348, 352, 355, 356, 359, 360, 365, 366, 368, 369, 371, 373, 374, 379, 386, 388, 390, 391, 396, 397, 399, 401, 402, 409, 410, 412, 413, 415, 416, 417, 418, 422, 423, 426, 428, 430, 431, 432, 433, 436, 437, 440, 441, 445, 448, 449, 451, 455, 456, 457, 459, 461, 464, 465, 466, 468, 469, 475, 476, 478, 485, 488, 490, 491, 494, 496, 497, 501, 506, 507, 508, 509, 510, 511], [2, 3, 6, 8, 10, 11, 12, 16, 17, 18, 19, 21, 22, 23, 27, 28, 29, 32, 33, 38, 40, 42, 43, 44, 45, 48, 49, 53, 54, 56, 57, 59, 61, 67, 69, 70, 71, 74, 76, 77, 78, 81, 82, 83, 84, 86, 87, 88, 92, 94, 95, 96, 97, 98, 100, 101, 102, 103, 104, 106, 107, 109, 111, 113, 115, 116, 118, 119, 125, 129, 130, 131, 136, 138, 139, 145, 146, 148, 150, 151, 152, 154, 155, 158, 160, 163, 164, 166, 167, 168, 169, 170, 171, 172, 175, 178, 180, 183, 189, 191, 199, 200, 201, 204, 206, 211, 212, 213, 214, 216, 218, 219, 220, 221, 222, 223, 225, 229, 234, 237, 239, 240, 242, 243, 245, 246, 247, 248, 250, 252, 255, 257, 258, 264, 266, 268, 270, 271, 272, 275, 277, 279, 280, 281, 282, 286, 287, 288, 290, 292, 295, 298, 299, 301, 302, 304, 305, 306, 307, 311, 312, 314, 316, 317, 319, 320, 324, 326, 327, 329, 331, 332, 333, 334, 337, 338, 339, 340, 345, 346, 347, 351, 355, 358, 359, 360, 369, 370, 371, 372, 373, 377, 378, 379, 380, 381, 384, 391, 392, 393, 394, 396, 398, 399, 400, 401, 404, 407, 409, 410, 411, 412, 413, 414, 417, 418, 419, 422, 425, 426, 432, 433, 434, 435, 436, 438, 441, 442, 446, 447, 448, 451, 452, 453, 454, 456, 457, 458, 461, 464, 465, 470, 474, 478, 479, 480, 488, 496, 499, 500, 501, 502, 503, 504, 506, 510], [1, 3, 4, 5, 6, 8, 10, 11, 12, 15, 16, 17, 18, 20, 21, 23, 24, 29, 30, 32, 33, 35, 36, 39, 40, 41, 42, 43, 46, 48, 49, 52, 53, 56, 59, 60, 62, 64, 65, 66, 67, 69, 71, 73, 74, 75, 77, 78, 81, 82, 86, 87, 92, 95, 99, 100, 101, 102, 104, 107, 109, 110, 111, 112, 113, 120, 121, 124, 125, 126, 133, 134, 136, 138, 140, 142, 146, 148, 149, 150, 151, 153, 156, 157, 158, 160, 162, 163, 165, 166, 171, 174, 175, 177, 178, 179, 181, 183, 186, 187, 188, 189, 190, 192, 193, 195, 196, 197, 201, 205, 210, 212, 215, 216, 221, 223, 224, 225, 229, 230, 232, 233, 235, 237, 238, 241, 242, 243, 246, 249, 250, 252, 253, 255, 256, 259, 261, 264, 265, 266, 269, 270, 273, 275, 276, 281, 282, 283, 290, 293, 294, 295, 297, 298, 299, 303, 305, 306, 307, 309, 312, 313, 316, 317, 318, 319, 320, 321, 325, 326, 327, 328, 334, 336, 338, 339, 340, 342, 343, 345, 347, 348, 349, 357, 358, 366, 369, 372, 373, 374, 377, 379, 381, 384, 385, 386, 387, 390, 391, 401, 404, 405, 406, 408, 414, 415, 416, 417, 418, 419, 420, 422, 423, 424, 426, 428, 429, 432, 434, 435, 437, 438, 440, 441, 444, 446, 449, 452, 453, 456, 457, 461, 462, 463, 465, 466, 467, 468, 469, 470, 471, 472, 479, 481, 483, 489, 490, 491, 493, 495, 499, 500, 503, 504, 509, 511], [0, 1, 3, 4, 6, 7, 16, 18, 20, 24, 25, 26, 27, 28, 32, 33, 34, 35, 39, 41, 42, 43, 45, 46, 50, 52, 53, 55, 56, 59, 66, 67, 68, 69, 70, 72, 73, 74, 75, 78, 81, 82, 83, 84, 85, 87, 95, 96, 97, 99, 100, 101, 105, 107, 111, 114, 115, 117, 118, 119, 120, 121, 124, 125, 126, 128, 130, 135, 137, 139, 141, 143, 144, 145, 146, 149, 153, 155, 156, 162, 164, 167, 170, 172, 174, 176, 177, 179, 180, 181, 183, 184, 185, 188, 193, 197, 198, 199, 200, 201, 202, 205, 208, 209, 210, 211, 214, 217, 219, 220, 221, 222, 223, 224, 226, 227, 231, 234, 237, 238, 239, 241, 242, 244, 245, 246, 247, 250, 251, 256, 257, 260, 261, 262, 263, 265, 267, 268, 269, 271, 277, 279, 281, 282, 284, 285, 286, 288, 291, 293, 294, 295, 296, 297, 298, 303, 304, 308, 310, 311, 312, 313, 314, 315, 316, 317, 326, 327, 332, 333, 334, 335, 336, 339, 342, 344, 345, 346, 347, 349, 350, 353, 354, 355, 356, 357, 361, 363, 367, 368, 371, 373, 376, 379, 380, 381, 382, 383, 385, 386, 387, 390, 391, 394, 397, 398, 401, 402, 404, 409, 410, 411, 412, 413, 414, 416, 417, 419, 421, 424, 429, 431, 432, 438, 440, 442, 443, 450, 452, 453, 456, 459, 461, 464, 467, 468, 472, 477, 478, 479, 480, 482, 484, 485, 486, 488, 493, 496, 498, 499, 500, 506, 507, 508, 509, 511], [3, 6, 18, 19, 20, 21, 23, 25, 26, 28, 30, 31, 37, 43, 44, 45, 49, 51, 53, 54, 56, 58, 59, 60, 61, 62, 65, 67, 68, 69, 73, 74, 75, 77, 79, 80, 82, 83, 84, 85, 87, 88, 89, 91, 92, 95, 98, 100, 102, 105, 106, 111, 116, 117, 118, 119, 120, 122, 128, 134, 135, 136, 137, 138, 139, 141, 143, 144, 145, 146, 147, 148, 153, 157, 159, 160, 162, 164, 165, 166, 168, 169, 170, 171, 172, 173, 176, 178, 179, 180, 181, 183, 184, 186, 188, 190, 194, 195, 197, 198, 199, 200, 203, 205, 208, 209, 214, 215, 217, 220, 222, 223, 224, 227, 228, 230, 231, 234, 238, 243, 244, 245, 246, 247, 249, 251, 252, 254, 256, 257, 258, 259, 261, 262, 264, 265, 266, 270, 271, 273, 275, 278, 280, 283, 288, 290, 291, 294, 295, 296, 298, 299, 302, 304, 309, 310, 311, 314, 316, 317, 318, 320, 323, 325, 327, 328, 329, 330, 332, 335, 336, 340, 341, 342, 344, 348, 350, 351, 352, 353, 354, 355, 356, 357, 359, 362, 363, 364, 365, 366, 367, 373, 378, 380, 382, 383, 384, 385, 388, 389, 390, 393, 394, 395, 396, 397, 398, 399, 407, 410, 416, 417, 418, 419, 422, 423, 425, 426, 428, 429, 431, 433, 434, 436, 438, 439, 444, 447, 449, 450, 451, 452, 457, 459, 460, 463, 465, 466, 467, 471, 472, 473, 475, 477, 478, 479, 481, 482, 486, 490, 498, 499, 500, 503, 504, 511], [0, 1, 3, 5, 10, 12, 15, 16, 19, 21, 27, 29, 32, 35, 36, 38, 40, 41, 42, 43, 45, 46, 47, 49, 51, 53, 55, 58, 59, 61, 64, 65, 67, 68, 73, 77, 78, 80, 82, 83, 84, 86, 87, 88, 89, 90, 91, 93, 94, 95, 96, 99, 100, 102, 107, 109, 114, 122, 124, 125, 127, 128, 131, 134, 135, 136, 138, 140, 143, 145, 146, 147, 149, 151, 152, 156, 157, 158, 160, 164, 168, 169, 170, 171, 175, 176, 180, 186, 189, 190, 194, 196, 198, 199, 200, 204, 205, 210, 213, 215, 216, 217, 218, 219, 220, 222, 223, 226, 227, 229, 233, 235, 240, 243, 245, 246, 250, 251, 252, 257, 259, 261, 264, 265, 266, 267, 269, 272, 273, 274, 279, 283, 287, 289, 291, 292, 294, 295, 296, 299, 300, 301, 302, 303, 304, 306, 308, 310, 311, 313, 314, 315, 322, 324, 325, 327, 328, 329, 330, 331, 332, 334, 335, 340, 342, 343, 346, 347, 348, 350, 351, 352, 353, 356, 357, 358, 361, 362, 363, 364, 365, 375, 378, 380, 382, 384, 385, 386, 387, 389, 390, 391, 394, 395, 397, 398, 399, 400, 401, 402, 403, 408, 409, 411, 414, 415, 417, 418, 422, 424, 425, 427, 429, 430, 431, 432, 433, 434, 435, 439, 440, 442, 443, 444, 445, 448, 449, 458, 462, 464, 465, 467, 468, 475, 476, 478, 482, 484, 485, 486, 487, 489, 490, 491, 493, 494, 495, 496, 497, 499, 500, 501, 504, 505, 508, 511], [3, 8, 9, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 30, 33, 34, 37, 39, 40, 42, 43, 45, 46, 47, 50, 53, 55, 56, 59, 61, 62, 67, 68, 69, 71, 72, 73, 77, 78, 79, 80, 83, 84, 85, 87, 88, 90, 91, 93, 95, 96, 97, 99, 101, 104, 105, 106, 110, 113, 114, 119, 123, 124, 127, 130, 131, 132, 133, 134, 136, 137, 138, 139, 140, 141, 142, 143, 145, 151, 152, 157, 158, 163, 165, 167, 168, 169, 171, 172, 174, 175, 177, 179, 183, 184, 186, 187, 190, 192, 194, 197, 201, 202, 205, 207, 208, 210, 212, 214, 215, 216, 217, 218, 220, 222, 225, 226, 227, 231, 232, 235, 237, 238, 242, 243, 245, 248, 249, 256, 257, 260, 261, 265, 267, 268, 272, 273, 276, 277, 279, 286, 287, 290, 291, 293, 294, 296, 298, 299, 301, 302, 303, 304, 305, 307, 310, 312, 319, 322, 325, 332, 333, 334, 335, 339, 340, 341, 342, 345, 348, 351, 354, 355, 357, 359, 360, 362, 364, 365, 366, 367, 368, 369, 371, 378, 379, 380, 382, 386, 387, 388, 389, 390, 391, 393, 394, 402, 403, 404, 406, 410, 411, 416, 417, 418, 419, 423, 424, 426, 428, 430, 431, 432, 433, 434, 435, 436, 438, 442, 443, 444, 447, 448, 455, 456, 457, 458, 461, 462, 463, 466, 469, 471, 472, 473, 474, 476, 478, 479, 480, 482, 483, 484, 487, 490, 491, 495, 496, 499, 504, 506], [2, 4, 6, 9, 10, 15, 17, 18, 19, 24, 26, 31, 32, 34, 35, 37, 38, 40, 41, 42, 44, 45, 46, 47, 49, 50, 51, 54, 57, 64, 67, 70, 71, 75, 77, 79, 81, 84, 85, 86, 87, 89, 90, 92, 93, 94, 95, 101, 102, 104, 105, 106, 107, 112, 113, 114, 115, 117, 119, 120, 123, 124, 126, 127, 131, 133, 135, 136, 137, 139, 142, 146, 148, 149, 150, 156, 157, 159, 161, 162, 163, 164, 167, 169, 172, 173, 175, 178, 180, 181, 182, 185, 189, 190, 194, 196, 198, 203, 205, 206, 207, 209, 212, 213, 215, 216, 217, 219, 220, 221, 223, 224, 225, 228, 232, 233, 238, 239, 242, 244, 245, 246, 247, 252, 254, 255, 256, 257, 261, 266, 267, 270, 271, 273, 274, 275, 276, 278, 280, 281, 282, 284, 286, 292, 293, 294, 295, 297, 300, 302, 303, 306, 308, 312, 320, 322, 323, 324, 327, 329, 331, 332, 335, 336, 337, 340, 342, 346, 349, 351, 354, 357, 358, 359, 360, 361, 363, 365, 366, 367, 369, 370, 372, 374, 377, 378, 380, 381, 383, 384, 386, 387, 388, 389, 391, 395, 397, 400, 403, 405, 406, 408, 409, 410, 413, 414, 415, 416, 417, 420, 421, 422, 424, 427, 431, 435, 436, 438, 439, 440, 441, 445, 448, 451, 456, 457, 458, 459, 460, 464, 465, 469, 471, 472, 475, 477, 478, 481, 482, 483, 484, 486, 489, 490, 491, 492, 496, 498, 499, 502, 505, 506, 507, 509, 510, 511], [1, 4, 6, 14, 24, 25, 26, 27, 28, 33, 34, 35, 37, 39, 40, 43, 47, 49, 51, 52, 54, 55, 56, 59, 61, 64, 65, 69, 70, 73, 75, 76, 79, 81, 84, 87, 89, 90, 92, 94, 95, 97, 99, 100, 102, 103, 104, 105, 106, 110, 113, 118, 119, 120, 121, 122, 127, 129, 130, 131, 133, 134, 135, 136, 144, 145, 147, 148, 150, 151, 155, 156, 158, 160, 161, 164, 167, 169, 172, 173, 174, 175, 176, 177, 181, 182, 183, 186, 189, 190, 191, 194, 195, 196, 199, 200, 201, 203, 204, 207, 208, 209, 212, 213, 214, 220, 221, 223, 224, 225, 228, 229, 232, 233, 234, 237, 238, 240, 243, 244, 247, 248, 249, 250, 251, 256, 258, 266, 269, 270, 271, 272, 274, 275, 276, 277, 280, 281, 283, 284, 285, 287, 288, 289, 290, 291, 292, 293, 294, 297, 298, 299, 300, 302, 303, 305, 308, 311, 312, 313, 315, 319, 320, 321, 322, 324, 326, 327, 329, 333, 335, 336, 337, 338, 339, 342, 344, 346, 349, 350, 351, 352, 354, 356, 358, 359, 361, 362, 364, 366, 368, 372, 376, 377, 379, 382, 383, 384, 387, 389, 394, 395, 399, 401, 402, 404, 405, 407, 409, 410, 411, 413, 415, 416, 417, 418, 420, 422, 425, 426, 427, 431, 433, 438, 440, 441, 442, 443, 444, 445, 446, 450, 452, 454, 455, 456, 465, 466, 468, 472, 473, 474, 476, 479, 480, 483, 489, 490, 492, 495, 499, 503, 505, 507, 509, 510], [2, 3, 5, 7, 10, 13, 14, 15, 18, 22, 24, 25, 26, 28, 32, 33, 34, 36, 37, 39, 42, 43, 45, 47, 48, 49, 51, 52, 54, 56, 57, 60, 63, 65, 66, 68, 69, 70, 74, 75, 80, 82, 84, 86, 87, 89, 90, 97, 101, 102, 103, 104, 105, 108, 109, 111, 114, 115, 118, 119, 122, 123, 124, 125, 126, 132, 133, 134, 136, 137, 138, 140, 141, 143, 145, 147, 149, 152, 153, 154, 159, 160, 162, 163, 167, 168, 169, 171, 172, 173, 176, 178, 181, 182, 183, 184, 185, 186, 188, 189, 191, 193, 194, 197, 198, 199, 200, 201, 202, 204, 209, 210, 213, 214, 215, 218, 220, 223, 224, 225, 226, 227, 229, 230, 231, 232, 234, 235, 237, 238, 239, 244, 249, 250, 253, 254, 260, 263, 265, 266, 267, 270, 274, 275, 278, 280, 282, 283, 289, 292, 294, 296, 297, 300, 303, 304, 305, 307, 312, 314, 316, 318, 321, 323, 324, 325, 327, 328, 330, 332, 333, 334, 335, 338, 341, 346, 348, 351, 352, 354, 356, 359, 360, 363, 365, 366, 367, 368, 370, 371, 375, 376, 379, 381, 382, 383, 384, 390, 394, 395, 399, 400, 404, 405, 406, 408, 410, 412, 418, 420, 421, 422, 424, 426, 428, 429, 433, 434, 435, 440, 442, 443, 445, 447, 450, 452, 453, 454, 455, 456, 458, 459, 460, 465, 466, 469, 470, 472, 474, 475, 479, 481, 482, 484, 485, 488, 492, 493, 495, 500, 501, 503, 505, 508, 509, 511], [1, 3, 5, 6, 9, 10, 11, 12, 14, 16, 17, 22, 23, 24, 25, 26, 30, 31, 35, 37, 38, 41, 42, 43, 44, 45, 47, 48, 51, 53, 54, 55, 56, 57, 60, 63, 66, 67, 69, 70, 71, 76, 77, 80, 81, 85, 87, 88, 89, 92, 93, 97, 104, 107, 109, 110, 112, 113, 114, 115, 119, 121, 122, 123, 124, 125, 126, 128, 129, 130, 136, 138, 141, 143, 144, 145, 147, 151, 152, 154, 155, 156, 158, 161, 163, 164, 166, 167, 169, 171, 176, 177, 181, 186, 188, 190, 191, 193, 194, 195, 196, 198, 199, 200, 201, 202, 205, 207, 209, 211, 214, 215, 218, 219, 220, 221, 222, 226, 227, 228, 230, 232, 236, 237, 239, 241, 242, 245, 246, 248, 250, 253, 256, 257, 258, 261, 262, 265, 266, 272, 274, 276, 278, 280, 281, 283, 284, 286, 287, 290, 291, 292, 296, 297, 300, 301, 303, 311, 312, 314, 315, 317, 318, 319, 322, 323, 325, 326, 327, 329, 332, 336, 337, 338, 339, 340, 341, 343, 346, 348, 350, 351, 353, 356, 357, 359, 361, 363, 364, 369, 370, 372, 374, 375, 376, 377, 378, 379, 380, 381, 383, 388, 389, 390, 391, 392, 393, 397, 407, 409, 410, 412, 413, 414, 416, 417, 418, 419, 421, 425, 427, 429, 431, 432, 434, 435, 441, 445, 446, 452, 454, 456, 457, 458, 459, 461, 464, 469, 471, 477, 481, 483, 484, 489, 490, 491, 492, 495, 499, 500, 502, 503, 504, 506, 507, 510], [1, 2, 4, 8, 9, 11, 12, 15, 16, 17, 20, 23, 24, 26, 27, 28, 29, 30, 31, 33, 36, 37, 39, 40, 42, 45, 48, 49, 50, 52, 54, 55, 56, 57, 60, 61, 64, 65, 66, 69, 70, 72, 73, 75, 76, 78, 79, 80, 82, 85, 88, 89, 90, 92, 93, 95, 96, 100, 102, 108, 109, 110, 112, 119, 120, 122, 125, 126, 127, 128, 131, 132, 136, 137, 138, 142, 143, 144, 146, 147, 148, 149, 150, 151, 152, 154, 156, 157, 163, 166, 168, 171, 173, 175, 178, 181, 182, 183, 184, 185, 186, 188, 199, 201, 202, 203, 204, 205, 206, 210, 217, 218, 221, 222, 224, 225, 230, 232, 233, 234, 235, 240, 241, 242, 246, 247, 248, 253, 254, 260, 261, 264, 265, 268, 269, 270, 272, 273, 275, 277, 278, 280, 281, 282, 286, 287, 289, 290, 292, 293, 297, 298, 299, 301, 302, 303, 305, 307, 310, 313, 314, 315, 318, 320, 321, 323, 324, 326, 329, 332, 333, 334, 336, 337, 338, 339, 340, 341, 343, 344, 346, 349, 351, 352, 354, 356, 357, 360, 362, 364, 365, 369, 370, 372, 376, 377, 379, 380, 381, 390, 393, 395, 398, 399, 400, 401, 402, 404, 407, 410, 412, 414, 415, 416, 417, 423, 424, 431, 433, 438, 439, 442, 444, 445, 446, 448, 450, 451, 454, 455, 456, 457, 458, 459, 460, 461, 463, 464, 467, 469, 470, 472, 478, 479, 480, 481, 485, 486, 487, 491, 492, 494, 496, 506, 508, 509]]
merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
model-00113-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d44a0022c799e423a616db0c83b4ff0d7365b4f5047068d48e7713a373b49cc6
3
+ size 1677721776
model-00115-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:87ea6f6e34cc88004efeb0dc0f1b9cafe2cc6b74b2844e0ce9942376576f5c24
3
+ size 1677721776
model-00117-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:74a19497b7ee7ca5e4a60434d13e4f85bd83c97b2d372c74b4c49330cbc3fb20
3
+ size 1677721776
model-00119-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:236e1875a27d3b2888a4f77476719df9f456b59ee38d10ed886be987289638f2
3
+ size 1677721776
model-00120-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:69fa55489774afdb921999f943983f148b21a4d04f9a6f38e2681f3a70ad6d83
3
+ size 1095240960
model-00121-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:995b4b79ffb0e53735fbabda5fab14a5e6c22ae4dbd97cceb6f3f2812d30a9fe
3
+ size 1677721768
model-00122-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d118e5688f1107e0e4d70c63bca233aec052280e67e77cba6a809ffee0cd7d0c
3
+ size 992346696
model-00123-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4303f4e44096ae7088bc4281a236a01ddcb76ed2442b0d209ab9a9f1f053b60c
3
+ size 1677721768
model-00124-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:79468ea5c07064724126705fd938d352167c943aa2a30247d92ef67e5ff507f2
3
+ size 876428280
model-00125-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8e181fcfa8f6c15a828f46552dd1d165bb9bad61d79273623499373caca57ff6
3
+ size 1677721768
model-00126-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0906ccb6454ee26c1d29f35bf3d7fa2e14d99ef737671c2f03e92cb693df3c49
3
+ size 1095240944
model-00127-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d03329a93fd665015580127b69f9576674feb70f153364cdd05666bb3552273b
3
+ size 1677721768
model-00128-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d579105365981b34bf093a5a9cbbd29f00de5c5089e36cdbdddd65b5ca22e306
3
+ size 992346696
model-00129-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c4afe8fc787b81ca5c56896c74c1f44f80c679691912ceb0de4151923f7f2cb8
3
+ size 1677721768
model-00130-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:de9c5695fb0fdb69ab0c078044ba7382450a3597bfaf6782b1a13c2839ea3c3d
3
+ size 2134616616
model-00131-of-00131.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:50be0ccd11e4da0c92114600aca321d2c18f795e9e923fd587469587ecfd9df4
3
+ size 1271398528
model.safetensors.index.json ADDED
The diff for this file is too large to render. See raw diff
 
preprocessor_config.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "size": {
3
+ "longest_edge": 16777216,
4
+ "shortest_edge": 65536
5
+ },
6
+ "patch_size": 16,
7
+ "temporal_patch_size": 2,
8
+ "merge_size": 2,
9
+ "image_mean": [
10
+ 0.5,
11
+ 0.5,
12
+ 0.5
13
+ ],
14
+ "image_std": [
15
+ 0.5,
16
+ 0.5,
17
+ 0.5
18
+ ],
19
+ "processor_class": "Qwen3VLProcessor",
20
+ "image_processor_type": "Qwen2VLImageProcessorFast"
21
+ }
swift-1.5-flash-next-demo.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5010c66c1b1372251b59afd3e37a13a35654387e595730010e89854e63e1d3d3
3
+ size 6579607
tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:06b9509352d2af50381ab2247e083b80d32d5c0aba91c272ca9ff729b6a0e523
3
+ size 19989325
tokenizer_config.json ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "audio_bos_token": "<|audio_start|>",
4
+ "audio_eos_token": "<|audio_end|>",
5
+ "audio_token": "<|audio_pad|>",
6
+ "backend": "tokenizers",
7
+ "bos_token": null,
8
+ "clean_up_tokenization_spaces": false,
9
+ "eos_token": "<|im_end|>",
10
+ "errors": "replace",
11
+ "image_token": "<|image_pad|>",
12
+ "is_local": true,
13
+ "local_files_only": false,
14
+ "model_max_length": 262144,
15
+ "model_specific_special_tokens": {
16
+ "audio_bos_token": "<|audio_start|>",
17
+ "audio_eos_token": "<|audio_end|>",
18
+ "audio_token": "<|audio_pad|>",
19
+ "image_token": "<|image_pad|>",
20
+ "video_token": "<|video_pad|>",
21
+ "vision_bos_token": "<|vision_start|>",
22
+ "vision_eos_token": "<|vision_end|>"
23
+ },
24
+ "pad_token": "<|endoftext|>",
25
+ "pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
26
+ "split_special_tokens": false,
27
+ "tokenizer_class": "Qwen2Tokenizer",
28
+ "unk_token": null,
29
+ "video_token": "<|video_pad|>",
30
+ "vision_bos_token": "<|vision_start|>",
31
+ "vision_eos_token": "<|vision_end|>"
32
+ }
training/heal50.log ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ {"trainable_tensors": 280, "trainable_params": 32617984, "routers": 48}
3
+ [transformers] `causal_conv1d_fn` is falling back to its reference PyTorch implementation because `causal_conv1d` is not installed. This is correct but much slower; install `causal_conv1d` for the optimized kernel.
4
+ {"eval": "start", "step": 0, "tokens": 0, "val_kl": 0.33844, "logic": 0.65, "logic_by_family": {"all": 0.65, "sillogismi": 0.8, "proposizionale": 0.6, "ordinamento": 0.6, "cavalieri_furfanti": 0.3, "catene_di_regole": 0.9, "griglia": 0.7}, "best_val_kl": 0.33844, "evals_without_gain": 0, "eval_sec": 168, "quiz_n": 60, "skipped_long": 0, "epoch": 0.0, "gpu_peak_gb": [5.7, 80.6, 47.3, 0.0]}
5
+ {"eval": "timer", "step": 4, "tokens": 50090, "val_kl": 0.32128, "logic": 0.683, "logic_by_family": {"all": 0.683, "sillogismi": 1.0, "proposizionale": 0.6, "ordinamento": 0.6, "cavalieri_furfanti": 0.3, "catene_di_regole": 0.9, "griglia": 0.7}, "best_val_kl": 0.32128, "evals_without_gain": 0, "eval_sec": 168, "quiz_n": 60, "skipped_long": 2, "epoch": 0.003, "gpu_peak_gb": [15.5, 87.0, 50.0, 0.0]}
6
+ {"step": 5, "tokens": 67557, "kl_ema": 0.46692, "lr_f": 0.491, "tok_s": 53, "min": 21.1}
7
+
8
+ {"trainable_tensors": 280, "trainable_params": 32617984, "routers": 48}
9
+ {"resumed": 6, "tokens": 84604}
10
+ [transformers] `causal_conv1d_fn` is falling back to its reference PyTorch implementation because `causal_conv1d` is not installed. This is correct but much slower; install `causal_conv1d` for the optimized kernel.
11
+ {"step": 10, "tokens": 139374, "kl_ema": 0.33574, "lr_f": 0.969, "tok_s": 742, "min": 1.2}
12
+ {"step": 15, "tokens": 175680, "kl_ema": 0.28994, "lr_f": 0.927, "tok_s": 622, "min": 2.4}
13
+ [W1002 06:22:37.522784295 CUDACachingAllocator.cpp:3933] memory allocation failed with OOM on device 1 while trying to allocate 383778816 bytes (free: 108593152, total: 101975851008).
14
+ {"step": 20, "tokens": 237077, "kl_ema": 0.31893, "lr_f": 0.868, "tok_s": 652, "min": 3.9}
15
+ {"step": 25, "tokens": 306741, "kl_ema": 0.3161, "lr_f": 0.796, "tok_s": 676, "min": 5.5}
16
+ {"step": 30, "tokens": 350775, "kl_ema": 0.25366, "lr_f": 0.714, "tok_s": 655, "min": 6.8}
17
+ {"step": 35, "tokens": 430595, "kl_ema": 0.24775, "lr_f": 0.624, "tok_s": 685, "min": 8.4}
18
+
19
+ {"trainable_tensors": 280, "trainable_params": 32617984, "routers": 48}
20
+ {"resumed": 38, "tokens": 460793}
21
+ [transformers] `causal_conv1d_fn` is falling back to its reference PyTorch implementation because `causal_conv1d` is not installed. This is correct but much slower; install `causal_conv1d` for the optimized kernel.
22
+ {"step": 40, "tokens": 478611, "kl_ema": 0.37337, "lr_f": 0.98, "tok_s": 554, "min": 0.5}
23
+ {"step": 45, "tokens": 528813, "kl_ema": 0.25763, "lr_f": 0.976, "tok_s": 623, "min": 1.8}
24
+ {"step": 50, "tokens": 589150, "kl_ema": 0.27686, "lr_f": 0.971, "tok_s": 658, "min": 3.3}
25
+ {"step": 55, "tokens": 643315, "kl_ema": 0.24088, "lr_f": 0.965, "tok_s": 660, "min": 4.6}
26
+ {"step": 60, "tokens": 700524, "kl_ema": 0.24496, "lr_f": 0.958, "tok_s": 663, "min": 6.0}
27
+ {"step": 65, "tokens": 750130, "kl_ema": 0.26121, "lr_f": 0.953, "tok_s": 655, "min": 7.4}
28
+ {"step": 70, "tokens": 801847, "kl_ema": 0.27362, "lr_f": 0.945, "tok_s": 654, "min": 8.7}
29
+ [W1002 06:39:27.215661086 CUDACachingAllocator.cpp:3933] memory allocation failed with OOM on device 1 while trying to allocate 419430400 bytes (free: 137953280, total: 101975851008).
30
+ {"step": 75, "tokens": 866169, "kl_ema": 0.26652, "lr_f": 0.936, "tok_s": 664, "min": 10.2}
31
+ {"step": 80, "tokens": 923701, "kl_ema": 0.24566, "lr_f": 0.928, "tok_s": 664, "min": 11.6}
32
+ {"eval": "timer", "step": 82, "tokens": 952914, "val_kl": 0.21256, "logic": 0.725, "logic_by_family": {"all": 0.725, "sillogismi": 0.9, "proposizionale": 0.8, "ordinamento": 0.7, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.8}, "best_val_kl": 0.21256, "evals_without_gain": 0, "eval_sec": 48, "quiz_n": 120, "skipped_long": 84, "epoch": 0.069, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
33
+ {"step": 85, "tokens": 970934, "kl_ema": 0.25196, "lr_f": 0.92, "tok_s": 620, "min": 13.7}
34
+ {"step": 90, "tokens": 1028190, "kl_ema": 0.22899, "lr_f": 0.911, "tok_s": 626, "min": 15.1}
35
+ {"step": 95, "tokens": 1080675, "kl_ema": 0.23466, "lr_f": 0.902, "tok_s": 625, "min": 16.5}
36
+ {"step": 100, "tokens": 1149348, "kl_ema": 0.24802, "lr_f": 0.891, "tok_s": 637, "min": 18.0}
37
+ {"step": 105, "tokens": 1203043, "kl_ema": 0.23774, "lr_f": 0.878, "tok_s": 639, "min": 19.4}
38
+ {"step": 110, "tokens": 1258669, "kl_ema": 0.24881, "lr_f": 0.869, "tok_s": 642, "min": 20.7}
39
+ {"step": 115, "tokens": 1296695, "kl_ema": 0.22516, "lr_f": 0.859, "tok_s": 635, "min": 21.9}
40
+ {"step": 120, "tokens": 1337671, "kl_ema": 0.22195, "lr_f": 0.852, "tok_s": 632, "min": 23.1}
41
+ {"step": 125, "tokens": 1389468, "kl_ema": 0.22472, "lr_f": 0.842, "tok_s": 632, "min": 24.5}
42
+ {"eval": "timer", "step": 128, "tokens": 1430969, "val_kl": 0.21171, "logic": 0.725, "logic_by_family": {"all": 0.725, "sillogismi": 0.9, "proposizionale": 0.8, "ordinamento": 0.75, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.21256, "evals_without_gain": 1, "eval_sec": 50, "quiz_n": 120, "skipped_long": 118, "epoch": 0.115, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
43
+ {"step": 130, "tokens": 1439759, "kl_ema": 0.21021, "lr_f": 0.829, "tok_s": 612, "min": 26.7}
44
+ {"step": 135, "tokens": 1485048, "kl_ema": 0.22772, "lr_f": 0.819, "tok_s": 611, "min": 27.9}
45
+ {"step": 140, "tokens": 1533251, "kl_ema": 0.21551, "lr_f": 0.808, "tok_s": 611, "min": 29.3}
46
+ {"step": 145, "tokens": 1574642, "kl_ema": 0.21528, "lr_f": 0.8, "tok_s": 609, "min": 30.5}
47
+ {"step": 150, "tokens": 1607960, "kl_ema": 0.21094, "lr_f": 0.792, "tok_s": 605, "min": 31.6}
48
+ {"step": 155, "tokens": 1666229, "kl_ema": 0.21289, "lr_f": 0.777, "tok_s": 608, "min": 33.0}
49
+ {"step": 160, "tokens": 1733929, "kl_ema": 0.21943, "lr_f": 0.761, "tok_s": 615, "min": 34.5}
50
+ {"step": 165, "tokens": 1779441, "kl_ema": 0.27137, "lr_f": 0.749, "tok_s": 615, "min": 35.8}
51
+ {"step": 170, "tokens": 1842417, "kl_ema": 0.21192, "lr_f": 0.734, "tok_s": 620, "min": 37.2}
52
+ {"eval": "timer", "step": 174, "tokens": 1888309, "val_kl": 0.19978, "logic": 0.75, "logic_by_family": {"all": 0.75, "sillogismi": 0.95, "proposizionale": 0.75, "ordinamento": 0.65, "cavalieri_furfanti": 0.45, "catene_di_regole": 0.9, "griglia": 0.8}, "best_val_kl": 0.19978, "evals_without_gain": 0, "eval_sec": 47, "quiz_n": 120, "skipped_long": 137, "epoch": 0.168, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
53
+ {"step": 175, "tokens": 1894601, "kl_ema": 0.20215, "lr_f": 0.719, "tok_s": 608, "min": 39.3}
54
+ {"step": 180, "tokens": 1936258, "kl_ema": 0.22187, "lr_f": 0.709, "tok_s": 608, "min": 40.5}
55
+ {"step": 185, "tokens": 1994127, "kl_ema": 0.22793, "lr_f": 0.695, "tok_s": 611, "min": 41.8}
56
+ {"step": 190, "tokens": 2055180, "kl_ema": 0.241, "lr_f": 0.679, "tok_s": 614, "min": 43.2}
57
+ {"step": 195, "tokens": 2156172, "kl_ema": 0.24605, "lr_f": 0.654, "tok_s": 626, "min": 45.1}
58
+ {"step": 200, "tokens": 2218292, "kl_ema": 0.21544, "lr_f": 0.63, "tok_s": 629, "min": 46.5}
59
+ {"step": 205, "tokens": 2284919, "kl_ema": 0.22883, "lr_f": 0.614, "tok_s": 633, "min": 48.0}
60
+ {"step": 210, "tokens": 2337844, "kl_ema": 0.25916, "lr_f": 0.602, "tok_s": 634, "min": 49.3}
61
+ {"step": 215, "tokens": 2414745, "kl_ema": 0.25735, "lr_f": 0.578, "tok_s": 639, "min": 51.0}
62
+ {"eval": "timer", "step": 216, "tokens": 2436921, "val_kl": 0.20142, "logic": 0.717, "logic_by_family": {"all": 0.717, "sillogismi": 0.95, "proposizionale": 0.8, "ordinamento": 0.65, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.19978, "evals_without_gain": 1, "eval_sec": 48, "quiz_n": 120, "skipped_long": 181, "epoch": 0.2, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
63
+ {"step": 220, "tokens": 2494227, "kl_ema": 0.25317, "lr_f": 0.555, "tok_s": 635, "min": 53.4}
64
+ {"step": 225, "tokens": 2558040, "kl_ema": 0.29156, "lr_f": 0.535, "tok_s": 638, "min": 54.8}
65
+ {"step": 230, "tokens": 2635613, "kl_ema": 0.30489, "lr_f": 0.517, "tok_s": 643, "min": 56.3}
66
+ {"step": 235, "tokens": 2701158, "kl_ema": 0.24973, "lr_f": 0.499, "tok_s": 646, "min": 57.8}
67
+ {"step": 240, "tokens": 2764560, "kl_ema": 0.229, "lr_f": 0.48, "tok_s": 648, "min": 59.3}
68
+ {"step": 245, "tokens": 2848252, "kl_ema": 0.23431, "lr_f": 0.457, "tok_s": 653, "min": 60.9}
69
+ {"step": 250, "tokens": 2919383, "kl_ema": 0.22376, "lr_f": 0.437, "tok_s": 655, "min": 62.5}
70
+ {"step": 255, "tokens": 2974509, "kl_ema": 0.24919, "lr_f": 0.42, "tok_s": 656, "min": 63.9}
71
+ {"eval": "timer", "step": 257, "tokens": 2993293, "val_kl": 0.19443, "logic": 0.708, "logic_by_family": {"all": 0.708, "sillogismi": 0.95, "proposizionale": 0.8, "ordinamento": 0.7, "cavalieri_furfanti": 0.3, "catene_di_regole": 0.8, "griglia": 0.7}, "best_val_kl": 0.19443, "evals_without_gain": 0, "eval_sec": 47, "quiz_n": 120, "skipped_long": 220, "epoch": 0.231, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
72
+ {"step": 260, "tokens": 3036246, "kl_ema": 0.2533, "lr_f": 0.407, "tok_s": 650, "min": 66.0}
73
+ {"step": 265, "tokens": 3115247, "kl_ema": 0.2688, "lr_f": 0.384, "tok_s": 654, "min": 67.6}
74
+ {"step": 270, "tokens": 3200048, "kl_ema": 0.26923, "lr_f": 0.362, "tok_s": 659, "min": 69.3}
75
+ {"step": 275, "tokens": 3280935, "kl_ema": 0.25369, "lr_f": 0.341, "tok_s": 663, "min": 70.9}
76
+ {"step": 280, "tokens": 3347171, "kl_ema": 0.22665, "lr_f": 0.324, "tok_s": 665, "min": 72.3}
77
+ {"step": 285, "tokens": 3430377, "kl_ema": 0.21072, "lr_f": 0.306, "tok_s": 669, "min": 74.0}
78
+ {"step": 290, "tokens": 3499420, "kl_ema": 0.19761, "lr_f": 0.287, "tok_s": 671, "min": 75.5}
79
+ {"step": 295, "tokens": 3559971, "kl_ema": 0.25924, "lr_f": 0.274, "tok_s": 672, "min": 76.8}
80
+ {"eval": "SIGTERM", "step": 296, "tokens": 3578973, "val_kl": 0.19061, "logic": 0.7, "logic_by_family": {"all": 0.7, "sillogismi": 0.84, "proposizionale": 0.82, "ordinamento": 0.66, "cavalieri_furfanti": 0.4, "catene_di_regole": 0.84, "griglia": 0.64}, "best_val_kl": 0.19061, "evals_without_gain": 0, "eval_sec": 101, "quiz_n": 300, "skipped_long": 254, "epoch": 0.26, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
81
+ {"stopped": "SIGTERM", "step": 296, "tokens": 3578973, "best_val_kl": 0.19060634383155653}
training/heal50/best.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:78cf29d715b5de7789a7361bd02e5bc1f542bcce4d07ac96907894fbb4eda0b6
3
+ size 65329487
training/heal50/quiz_all.json ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "all": 83.3,
3
+ "code": 78.0,
4
+ "commonsense": 92.0,
5
+ "logic": 88.0,
6
+ "math": 74.0,
7
+ "philosophy": 82.0,
8
+ "science": 86.0,
9
+ "n": 300
10
+ }
training/heal50/train.log ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {"trainable_tensors": 280, "trainable_params": 32617984, "routers": 48}
2
+ {"eval": "start", "step": 0, "tokens": 0, "val_kl": 0.33844, "logic": 0.65, "logic_by_family": {"all": 0.65, "sillogismi": 0.8, "proposizionale": 0.6, "ordinamento": 0.6, "cavalieri_furfanti": 0.3, "catene_di_regole": 0.9, "griglia": 0.7}, "best_val_kl": 0.33844, "evals_without_gain": 0, "eval_sec": 168, "quiz_n": 60, "skipped_long": 0, "epoch": 0.0, "gpu_peak_gb": [5.7, 80.6, 47.3, 0.0]}
3
+ {"eval": "timer", "step": 4, "tokens": 50090, "val_kl": 0.32128, "logic": 0.683, "logic_by_family": {"all": 0.683, "sillogismi": 1.0, "proposizionale": 0.6, "ordinamento": 0.6, "cavalieri_furfanti": 0.3, "catene_di_regole": 0.9, "griglia": 0.7}, "best_val_kl": 0.32128, "evals_without_gain": 0, "eval_sec": 168, "quiz_n": 60, "skipped_long": 2, "epoch": 0.003, "gpu_peak_gb": [15.5, 87.0, 50.0, 0.0]}
4
+ {"step": 5, "tokens": 67557, "kl_ema": 0.46692, "lr_f": 0.491, "tok_s": 53, "min": 21.1}
5
+ {"trainable_tensors": 280, "trainable_params": 32617984, "routers": 48}
6
+ {"resumed": 6, "tokens": 84604}
7
+ {"step": 10, "tokens": 139374, "kl_ema": 0.33574, "lr_f": 0.969, "tok_s": 742, "min": 1.2}
8
+ {"step": 15, "tokens": 175680, "kl_ema": 0.28994, "lr_f": 0.927, "tok_s": 622, "min": 2.4}
9
+ {"step": 20, "tokens": 237077, "kl_ema": 0.31893, "lr_f": 0.868, "tok_s": 652, "min": 3.9}
10
+ {"step": 25, "tokens": 306741, "kl_ema": 0.3161, "lr_f": 0.796, "tok_s": 676, "min": 5.5}
11
+ {"step": 30, "tokens": 350775, "kl_ema": 0.25366, "lr_f": 0.714, "tok_s": 655, "min": 6.8}
12
+ {"step": 35, "tokens": 430595, "kl_ema": 0.24775, "lr_f": 0.624, "tok_s": 685, "min": 8.4}
13
+ {"trainable_tensors": 280, "trainable_params": 32617984, "routers": 48}
14
+ {"resumed": 38, "tokens": 460793}
15
+ {"step": 40, "tokens": 478611, "kl_ema": 0.37337, "lr_f": 0.98, "tok_s": 554, "min": 0.5}
16
+ {"step": 45, "tokens": 528813, "kl_ema": 0.25763, "lr_f": 0.976, "tok_s": 623, "min": 1.8}
17
+ {"step": 50, "tokens": 589150, "kl_ema": 0.27686, "lr_f": 0.971, "tok_s": 658, "min": 3.3}
18
+ {"step": 55, "tokens": 643315, "kl_ema": 0.24088, "lr_f": 0.965, "tok_s": 660, "min": 4.6}
19
+ {"step": 60, "tokens": 700524, "kl_ema": 0.24496, "lr_f": 0.958, "tok_s": 663, "min": 6.0}
20
+ {"step": 65, "tokens": 750130, "kl_ema": 0.26121, "lr_f": 0.953, "tok_s": 655, "min": 7.4}
21
+ {"step": 70, "tokens": 801847, "kl_ema": 0.27362, "lr_f": 0.945, "tok_s": 654, "min": 8.7}
22
+ {"step": 75, "tokens": 866169, "kl_ema": 0.26652, "lr_f": 0.936, "tok_s": 664, "min": 10.2}
23
+ {"step": 80, "tokens": 923701, "kl_ema": 0.24566, "lr_f": 0.928, "tok_s": 664, "min": 11.6}
24
+ {"eval": "timer", "step": 82, "tokens": 952914, "val_kl": 0.21256, "logic": 0.725, "logic_by_family": {"all": 0.725, "sillogismi": 0.9, "proposizionale": 0.8, "ordinamento": 0.7, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.8}, "best_val_kl": 0.21256, "evals_without_gain": 0, "eval_sec": 48, "quiz_n": 120, "skipped_long": 84, "epoch": 0.069, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
25
+ {"step": 85, "tokens": 970934, "kl_ema": 0.25196, "lr_f": 0.92, "tok_s": 620, "min": 13.7}
26
+ {"step": 90, "tokens": 1028190, "kl_ema": 0.22899, "lr_f": 0.911, "tok_s": 626, "min": 15.1}
27
+ {"step": 95, "tokens": 1080675, "kl_ema": 0.23466, "lr_f": 0.902, "tok_s": 625, "min": 16.5}
28
+ {"step": 100, "tokens": 1149348, "kl_ema": 0.24802, "lr_f": 0.891, "tok_s": 637, "min": 18.0}
29
+ {"step": 105, "tokens": 1203043, "kl_ema": 0.23774, "lr_f": 0.878, "tok_s": 639, "min": 19.4}
30
+ {"step": 110, "tokens": 1258669, "kl_ema": 0.24881, "lr_f": 0.869, "tok_s": 642, "min": 20.7}
31
+ {"step": 115, "tokens": 1296695, "kl_ema": 0.22516, "lr_f": 0.859, "tok_s": 635, "min": 21.9}
32
+ {"step": 120, "tokens": 1337671, "kl_ema": 0.22195, "lr_f": 0.852, "tok_s": 632, "min": 23.1}
33
+ {"step": 125, "tokens": 1389468, "kl_ema": 0.22472, "lr_f": 0.842, "tok_s": 632, "min": 24.5}
34
+ {"eval": "timer", "step": 128, "tokens": 1430969, "val_kl": 0.21171, "logic": 0.725, "logic_by_family": {"all": 0.725, "sillogismi": 0.9, "proposizionale": 0.8, "ordinamento": 0.75, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.21256, "evals_without_gain": 1, "eval_sec": 50, "quiz_n": 120, "skipped_long": 118, "epoch": 0.115, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
35
+ {"step": 130, "tokens": 1439759, "kl_ema": 0.21021, "lr_f": 0.829, "tok_s": 612, "min": 26.7}
36
+ {"step": 135, "tokens": 1485048, "kl_ema": 0.22772, "lr_f": 0.819, "tok_s": 611, "min": 27.9}
37
+ {"step": 140, "tokens": 1533251, "kl_ema": 0.21551, "lr_f": 0.808, "tok_s": 611, "min": 29.3}
38
+ {"step": 145, "tokens": 1574642, "kl_ema": 0.21528, "lr_f": 0.8, "tok_s": 609, "min": 30.5}
39
+ {"step": 150, "tokens": 1607960, "kl_ema": 0.21094, "lr_f": 0.792, "tok_s": 605, "min": 31.6}
40
+ {"step": 155, "tokens": 1666229, "kl_ema": 0.21289, "lr_f": 0.777, "tok_s": 608, "min": 33.0}
41
+ {"step": 160, "tokens": 1733929, "kl_ema": 0.21943, "lr_f": 0.761, "tok_s": 615, "min": 34.5}
42
+ {"step": 165, "tokens": 1779441, "kl_ema": 0.27137, "lr_f": 0.749, "tok_s": 615, "min": 35.8}
43
+ {"step": 170, "tokens": 1842417, "kl_ema": 0.21192, "lr_f": 0.734, "tok_s": 620, "min": 37.2}
44
+ {"eval": "timer", "step": 174, "tokens": 1888309, "val_kl": 0.19978, "logic": 0.75, "logic_by_family": {"all": 0.75, "sillogismi": 0.95, "proposizionale": 0.75, "ordinamento": 0.65, "cavalieri_furfanti": 0.45, "catene_di_regole": 0.9, "griglia": 0.8}, "best_val_kl": 0.19978, "evals_without_gain": 0, "eval_sec": 47, "quiz_n": 120, "skipped_long": 137, "epoch": 0.168, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
45
+ {"step": 175, "tokens": 1894601, "kl_ema": 0.20215, "lr_f": 0.719, "tok_s": 608, "min": 39.3}
46
+ {"step": 180, "tokens": 1936258, "kl_ema": 0.22187, "lr_f": 0.709, "tok_s": 608, "min": 40.5}
47
+ {"step": 185, "tokens": 1994127, "kl_ema": 0.22793, "lr_f": 0.695, "tok_s": 611, "min": 41.8}
48
+ {"step": 190, "tokens": 2055180, "kl_ema": 0.241, "lr_f": 0.679, "tok_s": 614, "min": 43.2}
49
+ {"step": 195, "tokens": 2156172, "kl_ema": 0.24605, "lr_f": 0.654, "tok_s": 626, "min": 45.1}
50
+ {"step": 200, "tokens": 2218292, "kl_ema": 0.21544, "lr_f": 0.63, "tok_s": 629, "min": 46.5}
51
+ {"step": 205, "tokens": 2284919, "kl_ema": 0.22883, "lr_f": 0.614, "tok_s": 633, "min": 48.0}
52
+ {"step": 210, "tokens": 2337844, "kl_ema": 0.25916, "lr_f": 0.602, "tok_s": 634, "min": 49.3}
53
+ {"step": 215, "tokens": 2414745, "kl_ema": 0.25735, "lr_f": 0.578, "tok_s": 639, "min": 51.0}
54
+ {"eval": "timer", "step": 216, "tokens": 2436921, "val_kl": 0.20142, "logic": 0.717, "logic_by_family": {"all": 0.717, "sillogismi": 0.95, "proposizionale": 0.8, "ordinamento": 0.65, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.19978, "evals_without_gain": 1, "eval_sec": 48, "quiz_n": 120, "skipped_long": 181, "epoch": 0.2, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
55
+ {"step": 220, "tokens": 2494227, "kl_ema": 0.25317, "lr_f": 0.555, "tok_s": 635, "min": 53.4}
56
+ {"step": 225, "tokens": 2558040, "kl_ema": 0.29156, "lr_f": 0.535, "tok_s": 638, "min": 54.8}
57
+ {"step": 230, "tokens": 2635613, "kl_ema": 0.30489, "lr_f": 0.517, "tok_s": 643, "min": 56.3}
58
+ {"step": 235, "tokens": 2701158, "kl_ema": 0.24973, "lr_f": 0.499, "tok_s": 646, "min": 57.8}
59
+ {"step": 240, "tokens": 2764560, "kl_ema": 0.229, "lr_f": 0.48, "tok_s": 648, "min": 59.3}
60
+ {"step": 245, "tokens": 2848252, "kl_ema": 0.23431, "lr_f": 0.457, "tok_s": 653, "min": 60.9}
61
+ {"step": 250, "tokens": 2919383, "kl_ema": 0.22376, "lr_f": 0.437, "tok_s": 655, "min": 62.5}
62
+ {"step": 255, "tokens": 2974509, "kl_ema": 0.24919, "lr_f": 0.42, "tok_s": 656, "min": 63.9}
63
+ {"eval": "timer", "step": 257, "tokens": 2993293, "val_kl": 0.19443, "logic": 0.708, "logic_by_family": {"all": 0.708, "sillogismi": 0.95, "proposizionale": 0.8, "ordinamento": 0.7, "cavalieri_furfanti": 0.3, "catene_di_regole": 0.8, "griglia": 0.7}, "best_val_kl": 0.19443, "evals_without_gain": 0, "eval_sec": 47, "quiz_n": 120, "skipped_long": 220, "epoch": 0.231, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
64
+ {"step": 260, "tokens": 3036246, "kl_ema": 0.2533, "lr_f": 0.407, "tok_s": 650, "min": 66.0}
65
+ {"step": 265, "tokens": 3115247, "kl_ema": 0.2688, "lr_f": 0.384, "tok_s": 654, "min": 67.6}
66
+ {"step": 270, "tokens": 3200048, "kl_ema": 0.26923, "lr_f": 0.362, "tok_s": 659, "min": 69.3}
67
+ {"step": 275, "tokens": 3280935, "kl_ema": 0.25369, "lr_f": 0.341, "tok_s": 663, "min": 70.9}
68
+ {"step": 280, "tokens": 3347171, "kl_ema": 0.22665, "lr_f": 0.324, "tok_s": 665, "min": 72.3}
69
+ {"step": 285, "tokens": 3430377, "kl_ema": 0.21072, "lr_f": 0.306, "tok_s": 669, "min": 74.0}
70
+ {"step": 290, "tokens": 3499420, "kl_ema": 0.19761, "lr_f": 0.287, "tok_s": 671, "min": 75.5}
71
+ {"step": 295, "tokens": 3559971, "kl_ema": 0.25924, "lr_f": 0.274, "tok_s": 672, "min": 76.8}
72
+ {"eval": "SIGTERM", "step": 296, "tokens": 3578973, "val_kl": 0.19061, "logic": 0.7, "logic_by_family": {"all": 0.7, "sillogismi": 0.84, "proposizionale": 0.82, "ordinamento": 0.66, "cavalieri_furfanti": 0.4, "catene_di_regole": 0.84, "griglia": 0.64}, "best_val_kl": 0.19061, "evals_without_gain": 0, "eval_sec": 101, "quiz_n": 300, "skipped_long": 254, "epoch": 0.26, "gpu_peak_gb": [18.0, 89.1, 51.6, 0.0]}
73
+ {"stopped": "SIGTERM", "step": 296, "tokens": 3578973, "best_val_kl": 0.19060634383155653}
training/heal75.log ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ {"trainable_tensors": 280, "trainable_params": 48346624, "routers": 48}
3
+ [transformers] `causal_conv1d_fn` is falling back to its reference PyTorch implementation because `causal_conv1d` is not installed. This is correct but much slower; install `causal_conv1d` for the optimized kernel.
4
+ [transformers] `chunk_gated_delta_rule` is falling back to its reference PyTorch implementation because `flash-linear-attention` is not installed. This is correct but much slower; install `flash-linear-attention` for the optimized kernel.
5
+ {"eval": "start", "step": 0, "tokens": 0, "val_kl": 0.13787, "logic": 0.7, "logic_by_family": {"all": 0.7, "sillogismi": 0.9, "proposizionale": 0.75, "ordinamento": 0.65, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13787, "evals_without_gain": 0, "eval_sec": 360, "quiz_n": 120, "skipped_long": 0, "epoch": 0.0, "gpu_peak_gb": [4.6, 80.2, 78.8, 25.8]}
6
+ [W1002 04:23:35.740489666 CUDACachingAllocator.cpp:3933] memory allocation failed with OOM on device 2 while trying to allocate 304087040 bytes (free: 70844416, total: 101975851008).
7
+ [W1002 04:23:35.265208949 CUDACachingAllocator.cpp:3933] memory allocation failed with OOM on device 2 while trying to allocate 633339904 bytes (free: 320405504, total: 101975851008).
8
+ [W1002 04:23:35.265447038 CUDACachingAllocator.cpp:3933] memory allocation failed with OOM on device 2 while trying to allocate 633339904 bytes (free: 320405504, total: 101975851008).
9
+ Traceback (most recent call last):
10
+ File "/root/b/heal_swift.py", line 319, in <module>
11
+ main()
12
+ File "/root/b/heal_swift.py", line 285, in main
13
+ (loss / args.accum).backward()
14
+ File "/usr/local/lib/python3.12/dist-packages/torch/_tensor.py", line 623, in backward
15
+ torch.autograd.backward(
16
+ File "/usr/local/lib/python3.12/dist-packages/torch/autograd/__init__.py", line 395, in backward
17
+ _engine_run_backward(
18
+ File "/usr/local/lib/python3.12/dist-packages/torch/autograd/graph.py", line 979, in _engine_run_backward
19
+ return Variable._execution_engine.run_backward( # Calls into the C++ engine to run the backward pass
20
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
21
+ File "/usr/local/lib/python3.12/dist-packages/torch/utils/checkpoint.py", line 1183, in unpack_hook
22
+ _run_fn_with_dynamo_disabled(frame.recompute_fn, *args)
23
+ File "/usr/local/lib/python3.12/dist-packages/torch/_compile.py", line 54, in inner
24
+ return disable_fn(*args, **kwargs)
25
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
26
+ File "/usr/local/lib/python3.12/dist-packages/torch/_dynamo/eval_frame.py", line 1446, in _fn
27
+ return fn(*args, **kwargs)
28
+ ^^^^^^^^^^^^^^^^^^^
29
+ File "/usr/local/lib/python3.12/dist-packages/torch/utils/checkpoint.py", line 1150, in _run_fn_with_dynamo_disabled
30
+ return fn(*args, **kwargs)
31
+ ^^^^^^^^^^^^^^^^^^^
32
+ File "/usr/local/lib/python3.12/dist-packages/torch/utils/checkpoint.py", line 1688, in recompute_fn
33
+ fn(*args, **kwargs)
34
+ File "/usr/local/lib/python3.12/dist-packages/torch/nn/modules/module.py", line 1778, in _wrapped_call_impl
35
+ return self._call_impl(*args, **kwargs)
36
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
37
+ File "/usr/local/lib/python3.12/dist-packages/torch/nn/modules/module.py", line 1789, in _call_impl
38
+ return forward_call(*args, **kwargs)
39
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
40
+ File "/usr/local/lib/python3.12/dist-packages/accelerate/hooks.py", line 192, in new_forward
41
+ output = module._old_forward(*args, **kwargs)
42
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
43
+ File "/root/tenv/lib/python3.12/site-packages/transformers/models/qwen4_exp/modeling_qwen4_exp.py", line 1306, in forward
44
+ hidden_states = self.mlp(hidden_states)
45
+ ^^^^^^^^^^^^^^^^^^^^^^^
46
+ File "/usr/local/lib/python3.12/dist-packages/torch/nn/modules/module.py", line 1778, in _wrapped_call_impl
47
+ return self._call_impl(*args, **kwargs)
48
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
49
+ File "/usr/local/lib/python3.12/dist-packages/torch/nn/modules/module.py", line 1789, in _call_impl
50
+ return forward_call(*args, **kwargs)
51
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
52
+ File "/usr/local/lib/python3.12/dist-packages/accelerate/hooks.py", line 192, in new_forward
53
+ output = module._old_forward(*args, **kwargs)
54
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
55
+ File "/root/tenv/lib/python3.12/site-packages/transformers/models/qwen4_exp/modeling_qwen4_exp.py", line 994, in forward
56
+ expert_output = self.experts(hidden_states_reshaped, selected_experts, routing_weights)
57
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
58
+ File "/usr/local/lib/python3.12/dist-packages/torch/nn/modules/module.py", line 1778, in _wrapped_call_impl
59
+ return self._call_impl(*args, **kwargs)
60
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
61
+ File "/usr/local/lib/python3.12/dist-packages/torch/nn/modules/module.py", line 1789, in _call_impl
62
+ return forward_call(*args, **kwargs)
63
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
64
+ File "/usr/local/lib/python3.12/dist-packages/accelerate/hooks.py", line 192, in new_forward
65
+ output = module._old_forward(*args, **kwargs)
66
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
67
+ File "/root/tenv/lib/python3.12/site-packages/transformers/integrations/moe.py", line 573, in forward
68
+ return experts_forward(self, *args, **kwargs)
69
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
70
+ File "/root/tenv/lib/python3.12/site-packages/transformers/integrations/moe.py", line 394, in grouped_mm_experts_forward
71
+ selected_hidden_states_g = hidden_states[perm // num_top_k]
72
+ ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
73
+ torch.OutOfMemoryError: CUDA out of memory. Tried to allocate 604.00 MiB. GPU 2 has a total capacity of 94.97 GiB of which 305.56 MiB is free. Including non-PyTorch memory, this process has 94.66 GiB memory in use. Of the allocated memory 91.53 GiB is allocated by PyTorch, and 2.45 GiB is reserved by PyTorch but unallocated. If reserved but unallocated memory is large try setting PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True to avoid fragmentation. See documentation for Memory Management (https://docs.pytorch.org/docs/stable/notes/cuda.html#optimizing-memory-usage-with-pytorch-cuda-alloc-conf)
74
+
75
+ {"trainable_tensors": 280, "trainable_params": 48346624, "routers": 48}
76
+ {"resumed": 0, "tokens": 0}
77
+ [transformers] `causal_conv1d_fn` is falling back to its reference PyTorch implementation because `causal_conv1d` is not installed. This is correct but much slower; install `causal_conv1d` for the optimized kernel.
78
+ [transformers] `chunk_gated_delta_rule` is falling back to its reference PyTorch implementation because `flash-linear-attention` is not installed. This is correct but much slower; install `flash-linear-attention` for the optimized kernel.
79
+ {"eval": "start", "step": 0, "tokens": 0, "val_kl": 0.13787, "logic": 0.7, "logic_by_family": {"all": 0.7, "sillogismi": 0.9, "proposizionale": 0.75, "ordinamento": 0.65, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13787, "evals_without_gain": 1, "eval_sec": 349, "quiz_n": 120, "skipped_long": 0, "epoch": 0.0, "gpu_peak_gb": [4.6, 80.2, 78.8, 25.8]}
80
+ {"eval": "timer", "step": 4, "tokens": 61095, "val_kl": 0.1372, "logic": 0.733, "logic_by_family": {"all": 0.733, "sillogismi": 0.95, "proposizionale": 0.75, "ordinamento": 0.7, "cavalieri_furfanti": 0.45, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13787, "evals_without_gain": 2, "eval_sec": 354, "quiz_n": 120, "skipped_long": 3, "epoch": 0.004, "gpu_peak_gb": [16.0, 88.4, 87.0, 31.0]}
81
+ {"step": 5, "tokens": 71910, "kl_ema": 0.23852, "lr_f": 0.491, "tok_s": 48, "min": 25.2}
82
+ {"eval": "timer", "step": 8, "tokens": 115176, "val_kl": 0.13578, "logic": 0.717, "logic_by_family": {"all": 0.717, "sillogismi": 0.95, "proposizionale": 0.75, "ordinamento": 0.7, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13578, "evals_without_gain": 0, "eval_sec": 352, "quiz_n": 120, "skipped_long": 7, "epoch": 0.008, "gpu_peak_gb": [16.0, 88.4, 87.0, 31.0]}
83
+ {"step": 10, "tokens": 126860, "kl_ema": 0.1678, "lr_f": 0.914, "tok_s": 46, "min": 46.0}
84
+
85
+ {"trainable_tensors": 280, "trainable_params": 48346624, "routers": 48}
86
+ {"resumed": 11, "tokens": 145683}
87
+ [transformers] `causal_conv1d_fn` is falling back to its reference PyTorch implementation because `causal_conv1d` is not installed. This is correct but much slower; install `causal_conv1d` for the optimized kernel.
training/heal75/best.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2cd7eef9dc28e309d4fc59745b1f21ab7e88bd13f26d86016f9d091b8df9d381
3
+ size 96786767
training/heal75/train.log ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {"trainable_tensors": 280, "trainable_params": 48346624, "routers": 48}
2
+ {"eval": "start", "step": 0, "tokens": 0, "val_kl": 0.13787, "logic": 0.7, "logic_by_family": {"all": 0.7, "sillogismi": 0.9, "proposizionale": 0.75, "ordinamento": 0.65, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13787, "evals_without_gain": 0, "eval_sec": 360, "quiz_n": 120, "skipped_long": 0, "epoch": 0.0, "gpu_peak_gb": [4.6, 80.2, 78.8, 25.8]}
3
+ {"trainable_tensors": 280, "trainable_params": 48346624, "routers": 48}
4
+ {"resumed": 0, "tokens": 0}
5
+ {"eval": "start", "step": 0, "tokens": 0, "val_kl": 0.13787, "logic": 0.7, "logic_by_family": {"all": 0.7, "sillogismi": 0.9, "proposizionale": 0.75, "ordinamento": 0.65, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13787, "evals_without_gain": 1, "eval_sec": 349, "quiz_n": 120, "skipped_long": 0, "epoch": 0.0, "gpu_peak_gb": [4.6, 80.2, 78.8, 25.8]}
6
+ {"eval": "timer", "step": 4, "tokens": 61095, "val_kl": 0.1372, "logic": 0.733, "logic_by_family": {"all": 0.733, "sillogismi": 0.95, "proposizionale": 0.75, "ordinamento": 0.7, "cavalieri_furfanti": 0.45, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13787, "evals_without_gain": 2, "eval_sec": 354, "quiz_n": 120, "skipped_long": 3, "epoch": 0.004, "gpu_peak_gb": [16.0, 88.4, 87.0, 31.0]}
7
+ {"step": 5, "tokens": 71910, "kl_ema": 0.23852, "lr_f": 0.491, "tok_s": 48, "min": 25.2}
8
+ {"eval": "timer", "step": 8, "tokens": 115176, "val_kl": 0.13578, "logic": 0.717, "logic_by_family": {"all": 0.717, "sillogismi": 0.95, "proposizionale": 0.75, "ordinamento": 0.7, "cavalieri_furfanti": 0.35, "catene_di_regole": 0.8, "griglia": 0.75}, "best_val_kl": 0.13578, "evals_without_gain": 0, "eval_sec": 352, "quiz_n": 120, "skipped_long": 7, "epoch": 0.008, "gpu_peak_gb": [16.0, 88.4, 87.0, 31.0]}
9
+ {"step": 10, "tokens": 126860, "kl_ema": 0.1678, "lr_f": 0.914, "tok_s": 46, "min": 46.0}
10
+ {"trainable_tensors": 280, "trainable_params": 48346624, "routers": 48}
11
+ {"resumed": 11, "tokens": 145683}
training/logic_val_swift.json ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "all": 0.747,
3
+ "synth/catene_di_regole": 0.84,
4
+ "synth/catene_di_regole/L1": 0.944,
5
+ "synth/catene_di_regole/L2": 1.0,
6
+ "synth/catene_di_regole/L3": 0.789,
7
+ "synth/catene_di_regole/L4": 0.625,
8
+ "synth/cavalieri_furfanti": 0.54,
9
+ "synth/cavalieri_furfanti/L1": 0.625,
10
+ "synth/cavalieri_furfanti/L2": 0.5,
11
+ "synth/griglia": 0.64,
12
+ "synth/griglia/L10": 0.5,
13
+ "synth/griglia/L11": 0.75,
14
+ "synth/griglia/L5": 0.556,
15
+ "synth/griglia/L6": 0.545,
16
+ "synth/griglia/L7": 0.778,
17
+ "synth/griglia/L8": 0.6,
18
+ "synth/griglia/L9": 1.0,
19
+ "synth/ordinamento": 0.72,
20
+ "synth/ordinamento/L1": 1.0,
21
+ "synth/ordinamento/L2": 0.615,
22
+ "synth/ordinamento/L3": 0.591,
23
+ "synth/proposizionale": 0.84,
24
+ "synth/proposizionale/L1": 0.929,
25
+ "synth/proposizionale/L2": 0.762,
26
+ "synth/proposizionale/L3": 0.867,
27
+ "synth/sillogismi": 0.9,
28
+ "synth/sillogismi/L1": 0.9
29
+ }
training/mask_maximin_0.25.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a976c0f2d7949ddadf98cdb25569359463b4af9cff4ed93a956e8bdeefdd6cf6
3
+ size 26223
training/mask_maximin_0.35.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:57248683864d88737abd2986c943dffc810bd9dbd40f43a1ba873c8d265be407
3
+ size 26223
training/mask_maximin_0.5.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f2cf56d997bd1394479f9e153c7e9dedad013747360afe62fd602b9829e2977f
3
+ size 26216
training/mask_maximin_0.6.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:76d82bd3128f5078476a0134863ff952562631d36ae6dddc4ad8fd926d90ea2a
3
+ size 26216
training/mask_maximin_0.75.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7d48c2ee5cd70e9f23d5bbb1ae17be68e0f9e1eabb24b0e99b29a523775f93ee
3
+ size 26223
training/stages.log ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ === start 03:59
2
+ === swift logic quiz 04:02 {"all":0.747,"synth/catene_di_regole":0.84,"synth/catene_di_
3
+ === pruned 75 04:04 79G free
4
+ === e2/heal75 OOM at seq 16384, retrying with a smaller window 04:23
training/stages2.log ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ === 50: SIGTERM at 3559971 tokens 07:46
2
+ === stage 50: quiz_all=83.3 logic=0.7 07:54
3
+ === stage 50 NOT promoted (thresholds quiz>=85.0 logic>=0.72) 07:54
4
+ === descent ends at 50 (not promoted) 07:54
5
+ === descent done, publishing stage none 07:54
6
+ tail: cannot open 'publish.log' for reading: No such file or directory
7
+ === all done: 07:54
ukisai-banner.png ADDED

Git LFS Details

  • SHA256: 175d5fc950dbc149b29ccc212ddc19b423c18f7e95690b23667d4b254550522e
  • Pointer size: 131 Bytes
  • Size of remote file: 290 kB
video_preprocessor_config.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "size": {
3
+ "longest_edge": 25165824,
4
+ "shortest_edge": 4096
5
+ },
6
+ "patch_size": 16,
7
+ "temporal_patch_size": 2,
8
+ "merge_size": 2,
9
+ "image_mean": [
10
+ 0.5,
11
+ 0.5,
12
+ 0.5
13
+ ],
14
+ "image_std": [
15
+ 0.5,
16
+ 0.5,
17
+ 0.5
18
+ ],
19
+ "processor_class": "Qwen3VLProcessor",
20
+ "video_processor_type": "Qwen3VLVideoProcessor"
21
+ }
vocab.json ADDED
The diff for this file is too large to render. See raw diff