├── README.md ├── cad ├── hex choc - shelled.step └── morph case.step ├── doc ├── PCB_PCB_morph2_2024-01-19.pdf └── Schematic_morph2_2024-01-19.pdf ├── media └── v1top.jpg ├── pcb └── Gerber_V1.zip └── software ├── QMK ├── config.h ├── halconf.h ├── info.json ├── keymaps │ ├── default │ │ └── keymap.c │ ├── midi │ │ ├── keymap.c │ │ └── rules.mk │ └── vial │ │ ├── config.h │ │ ├── keymap.c │ │ ├── rules.mk │ │ └── vial.json ├── mcuconf.h ├── readme.md └── rules.mk └── leafcutterlabs_morph_vial.uf2 /README.md: -------------------------------------------------------------------------------- 1 | # MORPHINE 2 | Wicki–Hayden midi keyboard powered by RP2040.
3 | ![](media/v1top.jpg) 4 | Current QMK Vial firmware is very basic (LEDs are not working)
5 | ToDo:
6 | -Get Vial LED control working with backlight
7 | -Design additional texture for keycaps to designate sharps/flats/etc 8 | -------------------------------------------------------------------------------- /cad/hex choc - shelled.step: -------------------------------------------------------------------------------- 1 | ISO-10303-21; 2 | HEADER; 3 | /* Generated by software containing ST-Developer 4 | * from STEP Tools, Inc. (www.steptools.com) 5 | */ 6 | /* OPTION: using custom renumber hook */ 7 | 8 | FILE_DESCRIPTION( 9 | /* description */ ('STEP AP242', 10 | 'CAx-IF Rec.Pracs.---Representation and Presentation of Product Manufa 11 | cturing Information (PMI)---4.0---2014-10-13', 12 | 'CAx-IF Rec.Pracs.---3D Tessellated Geometry---0.4---2014-09-14','2;1'), 13 | 14 | /* implementation_level */ '2;1'); 15 | 16 | FILE_NAME( 17 | /* name */ '656124a4a092d53e3cc551ad', 18 | /* time_stamp */ '2023-11-24T22:33:08Z', 19 | /* author */ (''), 20 | /* organization */ (''), 21 | /* preprocessor_version */ 'ST-DEVELOPER v19.4', 22 | /* originating_system */ ' ', 23 | /* authorisation */ ' '); 24 | 25 | FILE_SCHEMA (('AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF { 1 0 10303 442 1 1 4 }')); 26 | ENDSEC; 27 | 28 | DATA; 29 | #10=SHAPE_REPRESENTATION_RELATIONSHIP('','',#1121,#11); 30 | #11=ADVANCED_BREP_SHAPE_REPRESENTATION('',(#1119),#1883); 31 | #12=CONICAL_SURFACE('',#1168,0.003,0.785398163397448); 32 | #13=CONICAL_SURFACE('',#1171,0.003,0.785398163397448); 33 | #14=CONICAL_SURFACE('',#1172,0.003,0.785398163397448); 34 | #15=CONICAL_SURFACE('',#1175,0.003,0.785398163397448); 35 | #16=CONICAL_SURFACE('',#1176,0.003,0.785398163397448); 36 | #17=CONICAL_SURFACE('',#1179,0.003,0.785398163397449); 37 | #18=CONICAL_SURFACE('',#1198,0.00215147186257613,0.785398163397448); 38 | #19=CONICAL_SURFACE('',#1201,0.00215147186257613,0.785398163397448); 39 | #20=CONICAL_SURFACE('',#1202,0.00215147186257613,0.785398163397448); 40 | #21=CONICAL_SURFACE('',#1205,0.00215147186257613,0.785398163397448); 41 | #22=CONICAL_SURFACE('',#1206,0.00215147186257613,0.785398163397448); 42 | #23=CONICAL_SURFACE('',#1209,0.00215147186257613,0.785398163397449); 43 | #24=CYLINDRICAL_SURFACE('',#1131,0.003); 44 | #25=CYLINDRICAL_SURFACE('',#1135,0.003); 45 | #26=CYLINDRICAL_SURFACE('',#1139,0.003); 46 | #27=CYLINDRICAL_SURFACE('',#1143,0.003); 47 | #28=CYLINDRICAL_SURFACE('',#1147,0.003); 48 | #29=CYLINDRICAL_SURFACE('',#1151,0.003); 49 | #30=CYLINDRICAL_SURFACE('',#1181,0.0018); 50 | #31=CYLINDRICAL_SURFACE('',#1184,0.0018); 51 | #32=CYLINDRICAL_SURFACE('',#1187,0.0018); 52 | #33=CYLINDRICAL_SURFACE('',#1190,0.0018); 53 | #34=CYLINDRICAL_SURFACE('',#1193,0.0018); 54 | #35=CYLINDRICAL_SURFACE('',#1196,0.0018); 55 | #36=CYLINDRICAL_SURFACE('',#1228,0.0012); 56 | #37=CYLINDRICAL_SURFACE('',#1229,0.0012); 57 | #38=CYLINDRICAL_SURFACE('',#1230,0.0012); 58 | #39=CYLINDRICAL_SURFACE('',#1231,0.0012); 59 | #40=CIRCLE('',#1124,0.00150294372515227); 60 | #41=CIRCLE('',#1125,0.00150294372515228); 61 | #42=CIRCLE('',#1126,0.00150294372515228); 62 | #43=CIRCLE('',#1127,0.00150294372515228); 63 | #44=CIRCLE('',#1128,0.00150294372515227); 64 | #45=CIRCLE('',#1129,0.00150294372515227); 65 | #46=CIRCLE('',#1132,0.003); 66 | #47=CIRCLE('',#1133,0.003); 67 | #48=CIRCLE('',#1136,0.003); 68 | #49=CIRCLE('',#1137,0.003); 69 | #50=CIRCLE('',#1140,0.003); 70 | #51=CIRCLE('',#1141,0.003); 71 | #52=CIRCLE('',#1144,0.003); 72 | #53=CIRCLE('',#1145,0.003); 73 | #54=CIRCLE('',#1148,0.003); 74 | #55=CIRCLE('',#1149,0.003); 75 | #56=CIRCLE('',#1152,0.003); 76 | #57=CIRCLE('',#1153,0.003); 77 | #58=CIRCLE('',#1155,0.002); 78 | #59=CIRCLE('',#1156,0.002); 79 | #60=CIRCLE('',#1157,0.002); 80 | #61=CIRCLE('',#1158,0.002); 81 | #62=CIRCLE('',#1159,0.002); 82 | #63=CIRCLE('',#1160,0.002); 83 | #64=CIRCLE('',#1162,0.0018); 84 | #65=CIRCLE('',#1163,0.0018); 85 | #66=CIRCLE('',#1164,0.0018); 86 | #67=CIRCLE('',#1165,0.0018); 87 | #68=CIRCLE('',#1166,0.0018); 88 | #69=CIRCLE('',#1167,0.0018); 89 | #70=CIRCLE('',#1182,0.0018); 90 | #71=CIRCLE('',#1185,0.0018); 91 | #72=CIRCLE('',#1188,0.0018); 92 | #73=CIRCLE('',#1191,0.0018); 93 | #74=CIRCLE('',#1194,0.0018); 94 | #75=CIRCLE('',#1197,0.0018); 95 | #76=CIRCLE('',#1211,0.0012); 96 | #77=CIRCLE('',#1212,0.0012); 97 | #78=CIRCLE('',#1216,0.0012); 98 | #79=CIRCLE('',#1217,0.0012); 99 | #80=CIRCLE('',#1219,0.0012); 100 | #81=CIRCLE('',#1220,0.0012); 101 | #82=CIRCLE('',#1223,0.0012); 102 | #83=CIRCLE('',#1224,0.0012); 103 | #84=ORIENTED_EDGE('',*,*,#396,.F.); 104 | #85=ORIENTED_EDGE('',*,*,#397,.T.); 105 | #86=ORIENTED_EDGE('',*,*,#398,.T.); 106 | #87=ORIENTED_EDGE('',*,*,#399,.F.); 107 | #88=ORIENTED_EDGE('',*,*,#400,.F.); 108 | #89=ORIENTED_EDGE('',*,*,#401,.F.); 109 | #90=ORIENTED_EDGE('',*,*,#402,.F.); 110 | #91=ORIENTED_EDGE('',*,*,#403,.F.); 111 | #92=ORIENTED_EDGE('',*,*,#404,.F.); 112 | #93=ORIENTED_EDGE('',*,*,#405,.F.); 113 | #94=ORIENTED_EDGE('',*,*,#406,.F.); 114 | #95=ORIENTED_EDGE('',*,*,#407,.F.); 115 | #96=ORIENTED_EDGE('',*,*,#408,.F.); 116 | #97=ORIENTED_EDGE('',*,*,#409,.F.); 117 | #98=ORIENTED_EDGE('',*,*,#410,.F.); 118 | #99=ORIENTED_EDGE('',*,*,#411,.F.); 119 | #100=ORIENTED_EDGE('',*,*,#412,.T.); 120 | #101=ORIENTED_EDGE('',*,*,#413,.T.); 121 | #102=ORIENTED_EDGE('',*,*,#414,.F.); 122 | #103=ORIENTED_EDGE('',*,*,#415,.F.); 123 | #104=ORIENTED_EDGE('',*,*,#416,.F.); 124 | #105=ORIENTED_EDGE('',*,*,#417,.T.); 125 | #106=ORIENTED_EDGE('',*,*,#418,.T.); 126 | #107=ORIENTED_EDGE('',*,*,#419,.F.); 127 | #108=ORIENTED_EDGE('',*,*,#418,.F.); 128 | #109=ORIENTED_EDGE('',*,*,#420,.T.); 129 | #110=ORIENTED_EDGE('',*,*,#421,.T.); 130 | #111=ORIENTED_EDGE('',*,*,#422,.F.); 131 | #112=ORIENTED_EDGE('',*,*,#421,.F.); 132 | #113=ORIENTED_EDGE('',*,*,#423,.T.); 133 | #114=ORIENTED_EDGE('',*,*,#424,.T.); 134 | #115=ORIENTED_EDGE('',*,*,#425,.F.); 135 | #116=ORIENTED_EDGE('',*,*,#424,.F.); 136 | #117=ORIENTED_EDGE('',*,*,#426,.T.); 137 | #118=ORIENTED_EDGE('',*,*,#427,.T.); 138 | #119=ORIENTED_EDGE('',*,*,#428,.F.); 139 | #120=ORIENTED_EDGE('',*,*,#427,.F.); 140 | #121=ORIENTED_EDGE('',*,*,#429,.T.); 141 | #122=ORIENTED_EDGE('',*,*,#430,.T.); 142 | #123=ORIENTED_EDGE('',*,*,#431,.F.); 143 | #124=ORIENTED_EDGE('',*,*,#430,.F.); 144 | #125=ORIENTED_EDGE('',*,*,#432,.T.); 145 | #126=ORIENTED_EDGE('',*,*,#433,.T.); 146 | #127=ORIENTED_EDGE('',*,*,#434,.F.); 147 | #128=ORIENTED_EDGE('',*,*,#433,.F.); 148 | #129=ORIENTED_EDGE('',*,*,#435,.T.); 149 | #130=ORIENTED_EDGE('',*,*,#436,.T.); 150 | #131=ORIENTED_EDGE('',*,*,#437,.F.); 151 | #132=ORIENTED_EDGE('',*,*,#436,.F.); 152 | #133=ORIENTED_EDGE('',*,*,#438,.T.); 153 | #134=ORIENTED_EDGE('',*,*,#439,.T.); 154 | #135=ORIENTED_EDGE('',*,*,#440,.F.); 155 | #136=ORIENTED_EDGE('',*,*,#439,.F.); 156 | #137=ORIENTED_EDGE('',*,*,#441,.T.); 157 | #138=ORIENTED_EDGE('',*,*,#442,.T.); 158 | #139=ORIENTED_EDGE('',*,*,#443,.F.); 159 | #140=ORIENTED_EDGE('',*,*,#442,.F.); 160 | #141=ORIENTED_EDGE('',*,*,#444,.T.); 161 | #142=ORIENTED_EDGE('',*,*,#445,.T.); 162 | #143=ORIENTED_EDGE('',*,*,#446,.F.); 163 | #144=ORIENTED_EDGE('',*,*,#445,.F.); 164 | #145=ORIENTED_EDGE('',*,*,#447,.T.); 165 | #146=ORIENTED_EDGE('',*,*,#448,.T.); 166 | #147=ORIENTED_EDGE('',*,*,#449,.F.); 167 | #148=ORIENTED_EDGE('',*,*,#448,.F.); 168 | #149=ORIENTED_EDGE('',*,*,#450,.T.); 169 | #150=ORIENTED_EDGE('',*,*,#416,.T.); 170 | #151=ORIENTED_EDGE('',*,*,#451,.F.); 171 | #152=ORIENTED_EDGE('',*,*,#452,.T.); 172 | #153=ORIENTED_EDGE('',*,*,#453,.T.); 173 | #154=ORIENTED_EDGE('',*,*,#454,.T.); 174 | #155=ORIENTED_EDGE('',*,*,#455,.T.); 175 | #156=ORIENTED_EDGE('',*,*,#456,.T.); 176 | #157=ORIENTED_EDGE('',*,*,#457,.T.); 177 | #158=ORIENTED_EDGE('',*,*,#458,.T.); 178 | #159=ORIENTED_EDGE('',*,*,#459,.T.); 179 | #160=ORIENTED_EDGE('',*,*,#460,.T.); 180 | #161=ORIENTED_EDGE('',*,*,#461,.T.); 181 | #162=ORIENTED_EDGE('',*,*,#462,.T.); 182 | #163=ORIENTED_EDGE('',*,*,#463,.T.); 183 | #164=ORIENTED_EDGE('',*,*,#464,.F.); 184 | #165=ORIENTED_EDGE('',*,*,#465,.F.); 185 | #166=ORIENTED_EDGE('',*,*,#466,.F.); 186 | #167=ORIENTED_EDGE('',*,*,#467,.F.); 187 | #168=ORIENTED_EDGE('',*,*,#468,.F.); 188 | #169=ORIENTED_EDGE('',*,*,#469,.F.); 189 | #170=ORIENTED_EDGE('',*,*,#470,.F.); 190 | #171=ORIENTED_EDGE('',*,*,#471,.F.); 191 | #172=ORIENTED_EDGE('',*,*,#472,.F.); 192 | #173=ORIENTED_EDGE('',*,*,#473,.F.); 193 | #174=ORIENTED_EDGE('',*,*,#474,.F.); 194 | #175=ORIENTED_EDGE('',*,*,#475,.F.); 195 | #176=ORIENTED_EDGE('',*,*,#419,.T.); 196 | #177=ORIENTED_EDGE('',*,*,#422,.T.); 197 | #178=ORIENTED_EDGE('',*,*,#425,.T.); 198 | #179=ORIENTED_EDGE('',*,*,#428,.T.); 199 | #180=ORIENTED_EDGE('',*,*,#431,.T.); 200 | #181=ORIENTED_EDGE('',*,*,#434,.T.); 201 | #182=ORIENTED_EDGE('',*,*,#437,.T.); 202 | #183=ORIENTED_EDGE('',*,*,#440,.T.); 203 | #184=ORIENTED_EDGE('',*,*,#443,.T.); 204 | #185=ORIENTED_EDGE('',*,*,#446,.T.); 205 | #186=ORIENTED_EDGE('',*,*,#449,.T.); 206 | #187=ORIENTED_EDGE('',*,*,#451,.T.); 207 | #188=ORIENTED_EDGE('',*,*,#476,.F.); 208 | #189=ORIENTED_EDGE('',*,*,#452,.F.); 209 | #190=ORIENTED_EDGE('',*,*,#477,.F.); 210 | #191=ORIENTED_EDGE('',*,*,#420,.F.); 211 | #192=ORIENTED_EDGE('',*,*,#477,.T.); 212 | #193=ORIENTED_EDGE('',*,*,#463,.F.); 213 | #194=ORIENTED_EDGE('',*,*,#478,.F.); 214 | #195=ORIENTED_EDGE('',*,*,#423,.F.); 215 | #196=ORIENTED_EDGE('',*,*,#476,.T.); 216 | #197=ORIENTED_EDGE('',*,*,#417,.F.); 217 | #198=ORIENTED_EDGE('',*,*,#479,.F.); 218 | #199=ORIENTED_EDGE('',*,*,#453,.F.); 219 | #200=ORIENTED_EDGE('',*,*,#478,.T.); 220 | #201=ORIENTED_EDGE('',*,*,#462,.F.); 221 | #202=ORIENTED_EDGE('',*,*,#480,.F.); 222 | #203=ORIENTED_EDGE('',*,*,#426,.F.); 223 | #204=ORIENTED_EDGE('',*,*,#479,.T.); 224 | #205=ORIENTED_EDGE('',*,*,#450,.F.); 225 | #206=ORIENTED_EDGE('',*,*,#481,.F.); 226 | #207=ORIENTED_EDGE('',*,*,#454,.F.); 227 | #208=ORIENTED_EDGE('',*,*,#480,.T.); 228 | #209=ORIENTED_EDGE('',*,*,#461,.F.); 229 | #210=ORIENTED_EDGE('',*,*,#482,.F.); 230 | #211=ORIENTED_EDGE('',*,*,#429,.F.); 231 | #212=ORIENTED_EDGE('',*,*,#481,.T.); 232 | #213=ORIENTED_EDGE('',*,*,#447,.F.); 233 | #214=ORIENTED_EDGE('',*,*,#483,.F.); 234 | #215=ORIENTED_EDGE('',*,*,#455,.F.); 235 | #216=ORIENTED_EDGE('',*,*,#482,.T.); 236 | #217=ORIENTED_EDGE('',*,*,#460,.F.); 237 | #218=ORIENTED_EDGE('',*,*,#484,.F.); 238 | #219=ORIENTED_EDGE('',*,*,#432,.F.); 239 | #220=ORIENTED_EDGE('',*,*,#483,.T.); 240 | #221=ORIENTED_EDGE('',*,*,#444,.F.); 241 | #222=ORIENTED_EDGE('',*,*,#485,.F.); 242 | #223=ORIENTED_EDGE('',*,*,#456,.F.); 243 | #224=ORIENTED_EDGE('',*,*,#484,.T.); 244 | #225=ORIENTED_EDGE('',*,*,#459,.F.); 245 | #226=ORIENTED_EDGE('',*,*,#486,.F.); 246 | #227=ORIENTED_EDGE('',*,*,#435,.F.); 247 | #228=ORIENTED_EDGE('',*,*,#485,.T.); 248 | #229=ORIENTED_EDGE('',*,*,#441,.F.); 249 | #230=ORIENTED_EDGE('',*,*,#487,.F.); 250 | #231=ORIENTED_EDGE('',*,*,#457,.F.); 251 | #232=ORIENTED_EDGE('',*,*,#486,.T.); 252 | #233=ORIENTED_EDGE('',*,*,#458,.F.); 253 | #234=ORIENTED_EDGE('',*,*,#487,.T.); 254 | #235=ORIENTED_EDGE('',*,*,#438,.F.); 255 | #236=ORIENTED_EDGE('',*,*,#488,.T.); 256 | #237=ORIENTED_EDGE('',*,*,#464,.T.); 257 | #238=ORIENTED_EDGE('',*,*,#489,.F.); 258 | #239=ORIENTED_EDGE('',*,*,#490,.F.); 259 | #240=ORIENTED_EDGE('',*,*,#489,.T.); 260 | #241=ORIENTED_EDGE('',*,*,#475,.T.); 261 | #242=ORIENTED_EDGE('',*,*,#491,.F.); 262 | #243=ORIENTED_EDGE('',*,*,#492,.F.); 263 | #244=ORIENTED_EDGE('',*,*,#491,.T.); 264 | #245=ORIENTED_EDGE('',*,*,#474,.T.); 265 | #246=ORIENTED_EDGE('',*,*,#493,.F.); 266 | #247=ORIENTED_EDGE('',*,*,#494,.F.); 267 | #248=ORIENTED_EDGE('',*,*,#493,.T.); 268 | #249=ORIENTED_EDGE('',*,*,#473,.T.); 269 | #250=ORIENTED_EDGE('',*,*,#495,.F.); 270 | #251=ORIENTED_EDGE('',*,*,#496,.F.); 271 | #252=ORIENTED_EDGE('',*,*,#495,.T.); 272 | #253=ORIENTED_EDGE('',*,*,#472,.T.); 273 | #254=ORIENTED_EDGE('',*,*,#497,.F.); 274 | #255=ORIENTED_EDGE('',*,*,#498,.F.); 275 | #256=ORIENTED_EDGE('',*,*,#497,.T.); 276 | #257=ORIENTED_EDGE('',*,*,#471,.T.); 277 | #258=ORIENTED_EDGE('',*,*,#499,.F.); 278 | #259=ORIENTED_EDGE('',*,*,#500,.F.); 279 | #260=ORIENTED_EDGE('',*,*,#499,.T.); 280 | #261=ORIENTED_EDGE('',*,*,#470,.T.); 281 | #262=ORIENTED_EDGE('',*,*,#501,.F.); 282 | #263=ORIENTED_EDGE('',*,*,#502,.F.); 283 | #264=ORIENTED_EDGE('',*,*,#501,.T.); 284 | #265=ORIENTED_EDGE('',*,*,#469,.T.); 285 | #266=ORIENTED_EDGE('',*,*,#503,.F.); 286 | #267=ORIENTED_EDGE('',*,*,#504,.F.); 287 | #268=ORIENTED_EDGE('',*,*,#503,.T.); 288 | #269=ORIENTED_EDGE('',*,*,#468,.T.); 289 | #270=ORIENTED_EDGE('',*,*,#505,.F.); 290 | #271=ORIENTED_EDGE('',*,*,#506,.F.); 291 | #272=ORIENTED_EDGE('',*,*,#505,.T.); 292 | #273=ORIENTED_EDGE('',*,*,#467,.T.); 293 | #274=ORIENTED_EDGE('',*,*,#507,.F.); 294 | #275=ORIENTED_EDGE('',*,*,#508,.F.); 295 | #276=ORIENTED_EDGE('',*,*,#507,.T.); 296 | #277=ORIENTED_EDGE('',*,*,#466,.T.); 297 | #278=ORIENTED_EDGE('',*,*,#509,.F.); 298 | #279=ORIENTED_EDGE('',*,*,#510,.F.); 299 | #280=ORIENTED_EDGE('',*,*,#509,.T.); 300 | #281=ORIENTED_EDGE('',*,*,#465,.T.); 301 | #282=ORIENTED_EDGE('',*,*,#488,.F.); 302 | #283=ORIENTED_EDGE('',*,*,#511,.F.); 303 | #284=ORIENTED_EDGE('',*,*,#512,.T.); 304 | #285=ORIENTED_EDGE('',*,*,#492,.T.); 305 | #286=ORIENTED_EDGE('',*,*,#513,.T.); 306 | #287=ORIENTED_EDGE('',*,*,#400,.T.); 307 | #288=ORIENTED_EDGE('',*,*,#513,.F.); 308 | #289=ORIENTED_EDGE('',*,*,#494,.T.); 309 | #290=ORIENTED_EDGE('',*,*,#514,.T.); 310 | #291=ORIENTED_EDGE('',*,*,#401,.T.); 311 | #292=ORIENTED_EDGE('',*,*,#512,.F.); 312 | #293=ORIENTED_EDGE('',*,*,#411,.T.); 313 | #294=ORIENTED_EDGE('',*,*,#515,.T.); 314 | #295=ORIENTED_EDGE('',*,*,#490,.T.); 315 | #296=ORIENTED_EDGE('',*,*,#514,.F.); 316 | #297=ORIENTED_EDGE('',*,*,#496,.T.); 317 | #298=ORIENTED_EDGE('',*,*,#516,.T.); 318 | #299=ORIENTED_EDGE('',*,*,#402,.T.); 319 | #300=ORIENTED_EDGE('',*,*,#515,.F.); 320 | #301=ORIENTED_EDGE('',*,*,#410,.T.); 321 | #302=ORIENTED_EDGE('',*,*,#517,.T.); 322 | #303=ORIENTED_EDGE('',*,*,#511,.T.); 323 | #304=ORIENTED_EDGE('',*,*,#516,.F.); 324 | #305=ORIENTED_EDGE('',*,*,#498,.T.); 325 | #306=ORIENTED_EDGE('',*,*,#518,.T.); 326 | #307=ORIENTED_EDGE('',*,*,#403,.T.); 327 | #308=ORIENTED_EDGE('',*,*,#517,.F.); 328 | #309=ORIENTED_EDGE('',*,*,#409,.T.); 329 | #310=ORIENTED_EDGE('',*,*,#519,.T.); 330 | #311=ORIENTED_EDGE('',*,*,#510,.T.); 331 | #312=ORIENTED_EDGE('',*,*,#518,.F.); 332 | #313=ORIENTED_EDGE('',*,*,#500,.T.); 333 | #314=ORIENTED_EDGE('',*,*,#520,.T.); 334 | #315=ORIENTED_EDGE('',*,*,#404,.T.); 335 | #316=ORIENTED_EDGE('',*,*,#519,.F.); 336 | #317=ORIENTED_EDGE('',*,*,#408,.T.); 337 | #318=ORIENTED_EDGE('',*,*,#521,.T.); 338 | #319=ORIENTED_EDGE('',*,*,#508,.T.); 339 | #320=ORIENTED_EDGE('',*,*,#520,.F.); 340 | #321=ORIENTED_EDGE('',*,*,#502,.T.); 341 | #322=ORIENTED_EDGE('',*,*,#522,.T.); 342 | #323=ORIENTED_EDGE('',*,*,#405,.T.); 343 | #324=ORIENTED_EDGE('',*,*,#521,.F.); 344 | #325=ORIENTED_EDGE('',*,*,#407,.T.); 345 | #326=ORIENTED_EDGE('',*,*,#523,.T.); 346 | #327=ORIENTED_EDGE('',*,*,#506,.T.); 347 | #328=ORIENTED_EDGE('',*,*,#522,.F.); 348 | #329=ORIENTED_EDGE('',*,*,#504,.T.); 349 | #330=ORIENTED_EDGE('',*,*,#523,.F.); 350 | #331=ORIENTED_EDGE('',*,*,#406,.T.); 351 | #332=ORIENTED_EDGE('',*,*,#524,.T.); 352 | #333=ORIENTED_EDGE('',*,*,#525,.T.); 353 | #334=ORIENTED_EDGE('',*,*,#526,.F.); 354 | #335=ORIENTED_EDGE('',*,*,#398,.F.); 355 | #336=ORIENTED_EDGE('',*,*,#527,.T.); 356 | #337=ORIENTED_EDGE('',*,*,#528,.T.); 357 | #338=ORIENTED_EDGE('',*,*,#526,.T.); 358 | #339=ORIENTED_EDGE('',*,*,#529,.T.); 359 | #340=ORIENTED_EDGE('',*,*,#530,.F.); 360 | #341=ORIENTED_EDGE('',*,*,#399,.T.); 361 | #342=ORIENTED_EDGE('',*,*,#531,.T.); 362 | #343=ORIENTED_EDGE('',*,*,#532,.T.); 363 | #344=ORIENTED_EDGE('',*,*,#527,.F.); 364 | #345=ORIENTED_EDGE('',*,*,#397,.F.); 365 | #346=ORIENTED_EDGE('',*,*,#530,.T.); 366 | #347=ORIENTED_EDGE('',*,*,#533,.T.); 367 | #348=ORIENTED_EDGE('',*,*,#534,.F.); 368 | #349=ORIENTED_EDGE('',*,*,#535,.T.); 369 | #350=ORIENTED_EDGE('',*,*,#531,.F.); 370 | #351=ORIENTED_EDGE('',*,*,#396,.T.); 371 | #352=ORIENTED_EDGE('',*,*,#536,.F.); 372 | #353=ORIENTED_EDGE('',*,*,#537,.T.); 373 | #354=ORIENTED_EDGE('',*,*,#538,.F.); 374 | #355=ORIENTED_EDGE('',*,*,#414,.T.); 375 | #356=ORIENTED_EDGE('',*,*,#539,.T.); 376 | #357=ORIENTED_EDGE('',*,*,#540,.T.); 377 | #358=ORIENTED_EDGE('',*,*,#538,.T.); 378 | #359=ORIENTED_EDGE('',*,*,#541,.T.); 379 | #360=ORIENTED_EDGE('',*,*,#542,.F.); 380 | #361=ORIENTED_EDGE('',*,*,#415,.T.); 381 | #362=ORIENTED_EDGE('',*,*,#542,.T.); 382 | #363=ORIENTED_EDGE('',*,*,#543,.T.); 383 | #364=ORIENTED_EDGE('',*,*,#544,.T.); 384 | #365=ORIENTED_EDGE('',*,*,#545,.T.); 385 | #366=ORIENTED_EDGE('',*,*,#546,.F.); 386 | #367=ORIENTED_EDGE('',*,*,#412,.F.); 387 | #368=ORIENTED_EDGE('',*,*,#546,.T.); 388 | #369=ORIENTED_EDGE('',*,*,#547,.T.); 389 | #370=ORIENTED_EDGE('',*,*,#539,.F.); 390 | #371=ORIENTED_EDGE('',*,*,#413,.F.); 391 | #372=ORIENTED_EDGE('',*,*,#534,.T.); 392 | #373=ORIENTED_EDGE('',*,*,#548,.T.); 393 | #374=ORIENTED_EDGE('',*,*,#524,.F.); 394 | #375=ORIENTED_EDGE('',*,*,#549,.T.); 395 | #376=ORIENTED_EDGE('',*,*,#544,.F.); 396 | #377=ORIENTED_EDGE('',*,*,#550,.T.); 397 | #378=ORIENTED_EDGE('',*,*,#536,.T.); 398 | #379=ORIENTED_EDGE('',*,*,#551,.T.); 399 | #380=ORIENTED_EDGE('',*,*,#543,.F.); 400 | #381=ORIENTED_EDGE('',*,*,#541,.F.); 401 | #382=ORIENTED_EDGE('',*,*,#537,.F.); 402 | #383=ORIENTED_EDGE('',*,*,#550,.F.); 403 | #384=ORIENTED_EDGE('',*,*,#545,.F.); 404 | #385=ORIENTED_EDGE('',*,*,#551,.F.); 405 | #386=ORIENTED_EDGE('',*,*,#540,.F.); 406 | #387=ORIENTED_EDGE('',*,*,#547,.F.); 407 | #388=ORIENTED_EDGE('',*,*,#533,.F.); 408 | #389=ORIENTED_EDGE('',*,*,#529,.F.); 409 | #390=ORIENTED_EDGE('',*,*,#525,.F.); 410 | #391=ORIENTED_EDGE('',*,*,#548,.F.); 411 | #392=ORIENTED_EDGE('',*,*,#535,.F.); 412 | #393=ORIENTED_EDGE('',*,*,#549,.F.); 413 | #394=ORIENTED_EDGE('',*,*,#528,.F.); 414 | #395=ORIENTED_EDGE('',*,*,#532,.F.); 415 | #396=EDGE_CURVE('',#552,#553,#648,.T.); 416 | #397=EDGE_CURVE('',#552,#554,#649,.T.); 417 | #398=EDGE_CURVE('',#554,#555,#650,.T.); 418 | #399=EDGE_CURVE('',#553,#555,#651,.T.); 419 | #400=EDGE_CURVE('',#556,#557,#40,.F.); 420 | #401=EDGE_CURVE('',#558,#556,#652,.T.); 421 | #402=EDGE_CURVE('',#559,#558,#41,.F.); 422 | #403=EDGE_CURVE('',#560,#559,#653,.T.); 423 | #404=EDGE_CURVE('',#561,#560,#42,.F.); 424 | #405=EDGE_CURVE('',#562,#561,#654,.T.); 425 | #406=EDGE_CURVE('',#563,#562,#43,.F.); 426 | #407=EDGE_CURVE('',#564,#563,#655,.T.); 427 | #408=EDGE_CURVE('',#565,#564,#44,.F.); 428 | #409=EDGE_CURVE('',#566,#565,#656,.T.); 429 | #410=EDGE_CURVE('',#567,#566,#45,.F.); 430 | #411=EDGE_CURVE('',#557,#567,#657,.T.); 431 | #412=EDGE_CURVE('',#568,#569,#658,.T.); 432 | #413=EDGE_CURVE('',#569,#570,#659,.T.); 433 | #414=EDGE_CURVE('',#571,#570,#660,.T.); 434 | #415=EDGE_CURVE('',#568,#571,#661,.T.); 435 | #416=EDGE_CURVE('',#572,#573,#662,.T.); 436 | #417=EDGE_CURVE('',#572,#574,#663,.T.); 437 | #418=EDGE_CURVE('',#574,#575,#664,.T.); 438 | #419=EDGE_CURVE('',#573,#575,#665,.T.); 439 | #420=EDGE_CURVE('',#574,#576,#46,.T.); 440 | #421=EDGE_CURVE('',#576,#577,#666,.T.); 441 | #422=EDGE_CURVE('',#575,#577,#47,.T.); 442 | #423=EDGE_CURVE('',#576,#578,#667,.T.); 443 | #424=EDGE_CURVE('',#578,#579,#668,.T.); 444 | #425=EDGE_CURVE('',#577,#579,#669,.T.); 445 | #426=EDGE_CURVE('',#578,#580,#48,.T.); 446 | #427=EDGE_CURVE('',#580,#581,#670,.T.); 447 | #428=EDGE_CURVE('',#579,#581,#49,.T.); 448 | #429=EDGE_CURVE('',#580,#582,#671,.T.); 449 | #430=EDGE_CURVE('',#582,#583,#672,.T.); 450 | #431=EDGE_CURVE('',#581,#583,#673,.T.); 451 | #432=EDGE_CURVE('',#582,#584,#50,.T.); 452 | #433=EDGE_CURVE('',#584,#585,#674,.T.); 453 | #434=EDGE_CURVE('',#583,#585,#51,.T.); 454 | #435=EDGE_CURVE('',#584,#586,#675,.T.); 455 | #436=EDGE_CURVE('',#586,#587,#676,.T.); 456 | #437=EDGE_CURVE('',#585,#587,#677,.T.); 457 | #438=EDGE_CURVE('',#586,#588,#52,.T.); 458 | #439=EDGE_CURVE('',#588,#589,#678,.T.); 459 | #440=EDGE_CURVE('',#587,#589,#53,.T.); 460 | #441=EDGE_CURVE('',#588,#590,#679,.T.); 461 | #442=EDGE_CURVE('',#590,#591,#680,.T.); 462 | #443=EDGE_CURVE('',#589,#591,#681,.T.); 463 | #444=EDGE_CURVE('',#590,#592,#54,.T.); 464 | #445=EDGE_CURVE('',#592,#593,#682,.T.); 465 | #446=EDGE_CURVE('',#591,#593,#55,.T.); 466 | #447=EDGE_CURVE('',#592,#594,#683,.T.); 467 | #448=EDGE_CURVE('',#594,#595,#684,.T.); 468 | #449=EDGE_CURVE('',#593,#595,#685,.T.); 469 | #450=EDGE_CURVE('',#594,#572,#56,.T.); 470 | #451=EDGE_CURVE('',#595,#573,#57,.T.); 471 | #452=EDGE_CURVE('',#596,#597,#58,.F.); 472 | #453=EDGE_CURVE('',#597,#598,#686,.T.); 473 | #454=EDGE_CURVE('',#598,#599,#59,.F.); 474 | #455=EDGE_CURVE('',#599,#600,#687,.T.); 475 | #456=EDGE_CURVE('',#600,#601,#60,.F.); 476 | #457=EDGE_CURVE('',#601,#602,#688,.T.); 477 | #458=EDGE_CURVE('',#602,#603,#61,.F.); 478 | #459=EDGE_CURVE('',#603,#604,#689,.T.); 479 | #460=EDGE_CURVE('',#604,#605,#62,.F.); 480 | #461=EDGE_CURVE('',#605,#606,#690,.T.); 481 | #462=EDGE_CURVE('',#606,#607,#63,.F.); 482 | #463=EDGE_CURVE('',#607,#596,#691,.T.); 483 | #464=EDGE_CURVE('',#608,#609,#692,.T.); 484 | #465=EDGE_CURVE('',#610,#608,#64,.T.); 485 | #466=EDGE_CURVE('',#611,#610,#693,.T.); 486 | #467=EDGE_CURVE('',#612,#611,#65,.T.); 487 | #468=EDGE_CURVE('',#613,#612,#694,.T.); 488 | #469=EDGE_CURVE('',#614,#613,#66,.T.); 489 | #470=EDGE_CURVE('',#615,#614,#695,.T.); 490 | #471=EDGE_CURVE('',#616,#615,#67,.T.); 491 | #472=EDGE_CURVE('',#617,#616,#696,.T.); 492 | #473=EDGE_CURVE('',#618,#617,#68,.T.); 493 | #474=EDGE_CURVE('',#619,#618,#697,.T.); 494 | #475=EDGE_CURVE('',#609,#619,#69,.T.); 495 | #476=EDGE_CURVE('',#597,#574,#698,.T.); 496 | #477=EDGE_CURVE('',#576,#596,#699,.T.); 497 | #478=EDGE_CURVE('',#578,#607,#700,.T.); 498 | #479=EDGE_CURVE('',#598,#572,#701,.T.); 499 | #480=EDGE_CURVE('',#580,#606,#702,.T.); 500 | #481=EDGE_CURVE('',#599,#594,#703,.T.); 501 | #482=EDGE_CURVE('',#582,#605,#704,.T.); 502 | #483=EDGE_CURVE('',#600,#592,#705,.T.); 503 | #484=EDGE_CURVE('',#584,#604,#706,.T.); 504 | #485=EDGE_CURVE('',#601,#590,#707,.T.); 505 | #486=EDGE_CURVE('',#586,#603,#708,.T.); 506 | #487=EDGE_CURVE('',#602,#588,#709,.T.); 507 | #488=EDGE_CURVE('',#620,#608,#710,.T.); 508 | #489=EDGE_CURVE('',#621,#609,#711,.T.); 509 | #490=EDGE_CURVE('',#620,#621,#712,.T.); 510 | #491=EDGE_CURVE('',#622,#619,#713,.T.); 511 | #492=EDGE_CURVE('',#621,#622,#70,.T.); 512 | #493=EDGE_CURVE('',#623,#618,#714,.T.); 513 | #494=EDGE_CURVE('',#622,#623,#715,.T.); 514 | #495=EDGE_CURVE('',#624,#617,#716,.T.); 515 | #496=EDGE_CURVE('',#623,#624,#71,.T.); 516 | #497=EDGE_CURVE('',#625,#616,#717,.T.); 517 | #498=EDGE_CURVE('',#624,#625,#718,.T.); 518 | #499=EDGE_CURVE('',#626,#615,#719,.T.); 519 | #500=EDGE_CURVE('',#625,#626,#72,.T.); 520 | #501=EDGE_CURVE('',#627,#614,#720,.F.); 521 | #502=EDGE_CURVE('',#626,#627,#721,.T.); 522 | #503=EDGE_CURVE('',#628,#613,#722,.T.); 523 | #504=EDGE_CURVE('',#627,#628,#73,.T.); 524 | #505=EDGE_CURVE('',#629,#612,#723,.T.); 525 | #506=EDGE_CURVE('',#628,#629,#724,.T.); 526 | #507=EDGE_CURVE('',#630,#611,#725,.T.); 527 | #508=EDGE_CURVE('',#629,#630,#74,.T.); 528 | #509=EDGE_CURVE('',#631,#610,#726,.T.); 529 | #510=EDGE_CURVE('',#630,#631,#727,.T.); 530 | #511=EDGE_CURVE('',#631,#620,#75,.T.); 531 | #512=EDGE_CURVE('',#557,#621,#728,.F.); 532 | #513=EDGE_CURVE('',#622,#556,#729,.T.); 533 | #514=EDGE_CURVE('',#623,#558,#730,.F.); 534 | #515=EDGE_CURVE('',#567,#620,#731,.T.); 535 | #516=EDGE_CURVE('',#624,#559,#732,.T.); 536 | #517=EDGE_CURVE('',#566,#631,#733,.F.); 537 | #518=EDGE_CURVE('',#625,#560,#734,.F.); 538 | #519=EDGE_CURVE('',#565,#630,#735,.T.); 539 | #520=EDGE_CURVE('',#626,#561,#736,.T.); 540 | #521=EDGE_CURVE('',#564,#629,#737,.F.); 541 | #522=EDGE_CURVE('',#627,#562,#738,.F.); 542 | #523=EDGE_CURVE('',#563,#628,#739,.T.); 543 | #524=EDGE_CURVE('',#632,#633,#740,.T.); 544 | #525=EDGE_CURVE('',#633,#634,#76,.F.); 545 | #526=EDGE_CURVE('',#555,#634,#741,.T.); 546 | #527=EDGE_CURVE('',#554,#635,#742,.T.); 547 | #528=EDGE_CURVE('',#635,#632,#77,.F.); 548 | #529=EDGE_CURVE('',#634,#636,#743,.F.); 549 | #530=EDGE_CURVE('',#553,#636,#744,.T.); 550 | #531=EDGE_CURVE('',#552,#637,#745,.T.); 551 | #532=EDGE_CURVE('',#637,#635,#746,.T.); 552 | #533=EDGE_CURVE('',#636,#638,#78,.T.); 553 | #534=EDGE_CURVE('',#639,#638,#747,.T.); 554 | #535=EDGE_CURVE('',#639,#637,#79,.T.); 555 | #536=EDGE_CURVE('',#640,#641,#748,.T.); 556 | #537=EDGE_CURVE('',#640,#642,#80,.T.); 557 | #538=EDGE_CURVE('',#571,#642,#749,.T.); 558 | #539=EDGE_CURVE('',#570,#643,#750,.T.); 559 | #540=EDGE_CURVE('',#643,#641,#81,.T.); 560 | #541=EDGE_CURVE('',#642,#644,#751,.F.); 561 | #542=EDGE_CURVE('',#568,#644,#752,.T.); 562 | #543=EDGE_CURVE('',#644,#645,#82,.F.); 563 | #544=EDGE_CURVE('',#645,#646,#753,.T.); 564 | #545=EDGE_CURVE('',#646,#647,#83,.F.); 565 | #546=EDGE_CURVE('',#569,#647,#754,.T.); 566 | #547=EDGE_CURVE('',#647,#643,#755,.T.); 567 | #548=EDGE_CURVE('',#638,#633,#756,.T.); 568 | #549=EDGE_CURVE('',#632,#639,#757,.F.); 569 | #550=EDGE_CURVE('',#645,#640,#758,.T.); 570 | #551=EDGE_CURVE('',#641,#646,#759,.F.); 571 | #552=VERTEX_POINT('',#1567); 572 | #553=VERTEX_POINT('',#1568); 573 | #554=VERTEX_POINT('',#1570); 574 | #555=VERTEX_POINT('',#1572); 575 | #556=VERTEX_POINT('',#1575); 576 | #557=VERTEX_POINT('',#1576); 577 | #558=VERTEX_POINT('',#1578); 578 | #559=VERTEX_POINT('',#1580); 579 | #560=VERTEX_POINT('',#1582); 580 | #561=VERTEX_POINT('',#1584); 581 | #562=VERTEX_POINT('',#1586); 582 | #563=VERTEX_POINT('',#1588); 583 | #564=VERTEX_POINT('',#1590); 584 | #565=VERTEX_POINT('',#1592); 585 | #566=VERTEX_POINT('',#1594); 586 | #567=VERTEX_POINT('',#1596); 587 | #568=VERTEX_POINT('',#1599); 588 | #569=VERTEX_POINT('',#1600); 589 | #570=VERTEX_POINT('',#1602); 590 | #571=VERTEX_POINT('',#1604); 591 | #572=VERTEX_POINT('',#1608); 592 | #573=VERTEX_POINT('',#1609); 593 | #574=VERTEX_POINT('',#1611); 594 | #575=VERTEX_POINT('',#1613); 595 | #576=VERTEX_POINT('',#1617); 596 | #577=VERTEX_POINT('',#1619); 597 | #578=VERTEX_POINT('',#1623); 598 | #579=VERTEX_POINT('',#1625); 599 | #580=VERTEX_POINT('',#1629); 600 | #581=VERTEX_POINT('',#1631); 601 | #582=VERTEX_POINT('',#1635); 602 | #583=VERTEX_POINT('',#1637); 603 | #584=VERTEX_POINT('',#1641); 604 | #585=VERTEX_POINT('',#1643); 605 | #586=VERTEX_POINT('',#1647); 606 | #587=VERTEX_POINT('',#1649); 607 | #588=VERTEX_POINT('',#1653); 608 | #589=VERTEX_POINT('',#1655); 609 | #590=VERTEX_POINT('',#1659); 610 | #591=VERTEX_POINT('',#1661); 611 | #592=VERTEX_POINT('',#1665); 612 | #593=VERTEX_POINT('',#1667); 613 | #594=VERTEX_POINT('',#1671); 614 | #595=VERTEX_POINT('',#1673); 615 | #596=VERTEX_POINT('',#1680); 616 | #597=VERTEX_POINT('',#1681); 617 | #598=VERTEX_POINT('',#1683); 618 | #599=VERTEX_POINT('',#1685); 619 | #600=VERTEX_POINT('',#1687); 620 | #601=VERTEX_POINT('',#1689); 621 | #602=VERTEX_POINT('',#1691); 622 | #603=VERTEX_POINT('',#1693); 623 | #604=VERTEX_POINT('',#1695); 624 | #605=VERTEX_POINT('',#1697); 625 | #606=VERTEX_POINT('',#1699); 626 | #607=VERTEX_POINT('',#1701); 627 | #608=VERTEX_POINT('',#1705); 628 | #609=VERTEX_POINT('',#1706); 629 | #610=VERTEX_POINT('',#1708); 630 | #611=VERTEX_POINT('',#1710); 631 | #612=VERTEX_POINT('',#1712); 632 | #613=VERTEX_POINT('',#1714); 633 | #614=VERTEX_POINT('',#1716); 634 | #615=VERTEX_POINT('',#1718); 635 | #616=VERTEX_POINT('',#1720); 636 | #617=VERTEX_POINT('',#1722); 637 | #618=VERTEX_POINT('',#1724); 638 | #619=VERTEX_POINT('',#1726); 639 | #620=VERTEX_POINT('',#1754); 640 | #621=VERTEX_POINT('',#1756); 641 | #622=VERTEX_POINT('',#1760); 642 | #623=VERTEX_POINT('',#1764); 643 | #624=VERTEX_POINT('',#1768); 644 | #625=VERTEX_POINT('',#1772); 645 | #626=VERTEX_POINT('',#1776); 646 | #627=VERTEX_POINT('',#1780); 647 | #628=VERTEX_POINT('',#1784); 648 | #629=VERTEX_POINT('',#1788); 649 | #630=VERTEX_POINT('',#1792); 650 | #631=VERTEX_POINT('',#1796); 651 | #632=VERTEX_POINT('',#1826); 652 | #633=VERTEX_POINT('',#1827); 653 | #634=VERTEX_POINT('',#1829); 654 | #635=VERTEX_POINT('',#1832); 655 | #636=VERTEX_POINT('',#1836); 656 | #637=VERTEX_POINT('',#1840); 657 | #638=VERTEX_POINT('',#1844); 658 | #639=VERTEX_POINT('',#1846); 659 | #640=VERTEX_POINT('',#1850); 660 | #641=VERTEX_POINT('',#1851); 661 | #642=VERTEX_POINT('',#1853); 662 | #643=VERTEX_POINT('',#1856); 663 | #644=VERTEX_POINT('',#1860); 664 | #645=VERTEX_POINT('',#1864); 665 | #646=VERTEX_POINT('',#1866); 666 | #647=VERTEX_POINT('',#1868); 667 | #648=LINE('',#1566,#760); 668 | #649=LINE('',#1569,#761); 669 | #650=LINE('',#1571,#762); 670 | #651=LINE('',#1573,#763); 671 | #652=LINE('',#1577,#764); 672 | #653=LINE('',#1581,#765); 673 | #654=LINE('',#1585,#766); 674 | #655=LINE('',#1589,#767); 675 | #656=LINE('',#1593,#768); 676 | #657=LINE('',#1597,#769); 677 | #658=LINE('',#1598,#770); 678 | #659=LINE('',#1601,#771); 679 | #660=LINE('',#1603,#772); 680 | #661=LINE('',#1605,#773); 681 | #662=LINE('',#1607,#774); 682 | #663=LINE('',#1610,#775); 683 | #664=LINE('',#1612,#776); 684 | #665=LINE('',#1614,#777); 685 | #666=LINE('',#1618,#778); 686 | #667=LINE('',#1622,#779); 687 | #668=LINE('',#1624,#780); 688 | #669=LINE('',#1626,#781); 689 | #670=LINE('',#1630,#782); 690 | #671=LINE('',#1634,#783); 691 | #672=LINE('',#1636,#784); 692 | #673=LINE('',#1638,#785); 693 | #674=LINE('',#1642,#786); 694 | #675=LINE('',#1646,#787); 695 | #676=LINE('',#1648,#788); 696 | #677=LINE('',#1650,#789); 697 | #678=LINE('',#1654,#790); 698 | #679=LINE('',#1658,#791); 699 | #680=LINE('',#1660,#792); 700 | #681=LINE('',#1662,#793); 701 | #682=LINE('',#1666,#794); 702 | #683=LINE('',#1670,#795); 703 | #684=LINE('',#1672,#796); 704 | #685=LINE('',#1674,#797); 705 | #686=LINE('',#1682,#798); 706 | #687=LINE('',#1686,#799); 707 | #688=LINE('',#1690,#800); 708 | #689=LINE('',#1694,#801); 709 | #690=LINE('',#1698,#802); 710 | #691=LINE('',#1702,#803); 711 | #692=LINE('',#1704,#804); 712 | #693=LINE('',#1709,#805); 713 | #694=LINE('',#1713,#806); 714 | #695=LINE('',#1717,#807); 715 | #696=LINE('',#1721,#808); 716 | #697=LINE('',#1725,#809); 717 | #698=LINE('',#1729,#810); 718 | #699=LINE('',#1730,#811); 719 | #700=LINE('',#1732,#812); 720 | #701=LINE('',#1734,#813); 721 | #702=LINE('',#1736,#814); 722 | #703=LINE('',#1738,#815); 723 | #704=LINE('',#1740,#816); 724 | #705=LINE('',#1742,#817); 725 | #706=LINE('',#1744,#818); 726 | #707=LINE('',#1746,#819); 727 | #708=LINE('',#1748,#820); 728 | #709=LINE('',#1750,#821); 729 | #710=LINE('',#1753,#822); 730 | #711=LINE('',#1755,#823); 731 | #712=LINE('',#1757,#824); 732 | #713=LINE('',#1759,#825); 733 | #714=LINE('',#1763,#826); 734 | #715=LINE('',#1765,#827); 735 | #716=LINE('',#1767,#828); 736 | #717=LINE('',#1771,#829); 737 | #718=LINE('',#1773,#830); 738 | #719=LINE('',#1775,#831); 739 | #720=LINE('',#1779,#832); 740 | #721=LINE('',#1781,#833); 741 | #722=LINE('',#1783,#834); 742 | #723=LINE('',#1787,#835); 743 | #724=LINE('',#1789,#836); 744 | #725=LINE('',#1791,#837); 745 | #726=LINE('',#1795,#838); 746 | #727=LINE('',#1797,#839); 747 | #728=LINE('',#1801,#840); 748 | #729=LINE('',#1802,#841); 749 | #730=LINE('',#1804,#842); 750 | #731=LINE('',#1806,#843); 751 | #732=LINE('',#1808,#844); 752 | #733=LINE('',#1810,#845); 753 | #734=LINE('',#1812,#846); 754 | #735=LINE('',#1814,#847); 755 | #736=LINE('',#1816,#848); 756 | #737=LINE('',#1818,#849); 757 | #738=LINE('',#1820,#850); 758 | #739=LINE('',#1822,#851); 759 | #740=LINE('',#1825,#852); 760 | #741=LINE('',#1830,#853); 761 | #742=LINE('',#1831,#854); 762 | #743=LINE('',#1835,#855); 763 | #744=LINE('',#1837,#856); 764 | #745=LINE('',#1839,#857); 765 | #746=LINE('',#1841,#858); 766 | #747=LINE('',#1845,#859); 767 | #748=LINE('',#1849,#860); 768 | #749=LINE('',#1854,#861); 769 | #750=LINE('',#1855,#862); 770 | #751=LINE('',#1859,#863); 771 | #752=LINE('',#1861,#864); 772 | #753=LINE('',#1865,#865); 773 | #754=LINE('',#1869,#866); 774 | #755=LINE('',#1871,#867); 775 | #756=LINE('',#1873,#868); 776 | #757=LINE('',#1874,#869); 777 | #758=LINE('',#1876,#870); 778 | #759=LINE('',#1877,#871); 779 | #760=VECTOR('',#1236,1.); 780 | #761=VECTOR('',#1237,1.); 781 | #762=VECTOR('',#1238,1.); 782 | #763=VECTOR('',#1239,1.); 783 | #764=VECTOR('',#1242,1.); 784 | #765=VECTOR('',#1245,1.); 785 | #766=VECTOR('',#1248,1.); 786 | #767=VECTOR('',#1251,1.); 787 | #768=VECTOR('',#1254,1.); 788 | #769=VECTOR('',#1257,1.); 789 | #770=VECTOR('',#1258,1.); 790 | #771=VECTOR('',#1259,1.); 791 | #772=VECTOR('',#1260,1.); 792 | #773=VECTOR('',#1261,1.); 793 | #774=VECTOR('',#1264,1.); 794 | #775=VECTOR('',#1265,1.); 795 | #776=VECTOR('',#1266,1.); 796 | #777=VECTOR('',#1267,1.); 797 | #778=VECTOR('',#1272,1.); 798 | #779=VECTOR('',#1277,1.); 799 | #780=VECTOR('',#1278,1.); 800 | #781=VECTOR('',#1279,1.); 801 | #782=VECTOR('',#1284,1.); 802 | #783=VECTOR('',#1289,1.); 803 | #784=VECTOR('',#1290,1.); 804 | #785=VECTOR('',#1291,1.); 805 | #786=VECTOR('',#1296,1.); 806 | #787=VECTOR('',#1301,1.); 807 | #788=VECTOR('',#1302,1.); 808 | #789=VECTOR('',#1303,1.); 809 | #790=VECTOR('',#1308,1.); 810 | #791=VECTOR('',#1313,1.); 811 | #792=VECTOR('',#1314,1.); 812 | #793=VECTOR('',#1315,1.); 813 | #794=VECTOR('',#1320,1.); 814 | #795=VECTOR('',#1325,1.); 815 | #796=VECTOR('',#1326,1.); 816 | #797=VECTOR('',#1327,1.); 817 | #798=VECTOR('',#1338,1.); 818 | #799=VECTOR('',#1341,1.); 819 | #800=VECTOR('',#1344,1.); 820 | #801=VECTOR('',#1347,1.); 821 | #802=VECTOR('',#1350,1.); 822 | #803=VECTOR('',#1353,1.); 823 | #804=VECTOR('',#1356,1.); 824 | #805=VECTOR('',#1359,1.); 825 | #806=VECTOR('',#1362,1.); 826 | #807=VECTOR('',#1365,1.); 827 | #808=VECTOR('',#1368,1.); 828 | #809=VECTOR('',#1371,1.); 829 | #810=VECTOR('',#1376,1.); 830 | #811=VECTOR('',#1377,1.); 831 | #812=VECTOR('',#1380,1.); 832 | #813=VECTOR('',#1383,1.); 833 | #814=VECTOR('',#1386,1.); 834 | #815=VECTOR('',#1389,1.); 835 | #816=VECTOR('',#1392,1.); 836 | #817=VECTOR('',#1395,1.); 837 | #818=VECTOR('',#1398,1.); 838 | #819=VECTOR('',#1401,1.); 839 | #820=VECTOR('',#1404,1.); 840 | #821=VECTOR('',#1407,1.); 841 | #822=VECTOR('',#1412,1.); 842 | #823=VECTOR('',#1413,1.); 843 | #824=VECTOR('',#1414,1.); 844 | #825=VECTOR('',#1417,1.); 845 | #826=VECTOR('',#1422,1.); 846 | #827=VECTOR('',#1423,1.); 847 | #828=VECTOR('',#1426,1.); 848 | #829=VECTOR('',#1431,1.); 849 | #830=VECTOR('',#1432,1.); 850 | #831=VECTOR('',#1435,1.); 851 | #832=VECTOR('',#1440,1.); 852 | #833=VECTOR('',#1441,1.); 853 | #834=VECTOR('',#1444,1.); 854 | #835=VECTOR('',#1449,1.); 855 | #836=VECTOR('',#1450,1.); 856 | #837=VECTOR('',#1453,1.); 857 | #838=VECTOR('',#1458,1.); 858 | #839=VECTOR('',#1459,1.); 859 | #840=VECTOR('',#1466,1.); 860 | #841=VECTOR('',#1467,1.); 861 | #842=VECTOR('',#1470,1.); 862 | #843=VECTOR('',#1473,1.); 863 | #844=VECTOR('',#1476,1.); 864 | #845=VECTOR('',#1479,1.); 865 | #846=VECTOR('',#1482,1.); 866 | #847=VECTOR('',#1485,1.); 867 | #848=VECTOR('',#1488,1.); 868 | #849=VECTOR('',#1491,1.); 869 | #850=VECTOR('',#1494,1.); 870 | #851=VECTOR('',#1497,1.); 871 | #852=VECTOR('',#1502,1.); 872 | #853=VECTOR('',#1505,1.); 873 | #854=VECTOR('',#1506,1.); 874 | #855=VECTOR('',#1511,1.); 875 | #856=VECTOR('',#1512,1.); 876 | #857=VECTOR('',#1515,1.); 877 | #858=VECTOR('',#1516,1.); 878 | #859=VECTOR('',#1521,1.); 879 | #860=VECTOR('',#1526,1.); 880 | #861=VECTOR('',#1529,1.); 881 | #862=VECTOR('',#1530,1.); 882 | #863=VECTOR('',#1535,1.); 883 | #864=VECTOR('',#1536,1.); 884 | #865=VECTOR('',#1541,1.); 885 | #866=VECTOR('',#1544,1.); 886 | #867=VECTOR('',#1547,1.); 887 | #868=VECTOR('',#1550,1.); 888 | #869=VECTOR('',#1551,1.); 889 | #870=VECTOR('',#1554,1.); 890 | #871=VECTOR('',#1555,1.); 891 | #872=EDGE_LOOP('',(#84,#85,#86,#87)); 892 | #873=EDGE_LOOP('',(#88,#89,#90,#91,#92,#93,#94,#95,#96,#97,#98,#99)); 893 | #874=EDGE_LOOP('',(#100,#101,#102,#103)); 894 | #875=EDGE_LOOP('',(#104,#105,#106,#107)); 895 | #876=EDGE_LOOP('',(#108,#109,#110,#111)); 896 | #877=EDGE_LOOP('',(#112,#113,#114,#115)); 897 | #878=EDGE_LOOP('',(#116,#117,#118,#119)); 898 | #879=EDGE_LOOP('',(#120,#121,#122,#123)); 899 | #880=EDGE_LOOP('',(#124,#125,#126,#127)); 900 | #881=EDGE_LOOP('',(#128,#129,#130,#131)); 901 | #882=EDGE_LOOP('',(#132,#133,#134,#135)); 902 | #883=EDGE_LOOP('',(#136,#137,#138,#139)); 903 | #884=EDGE_LOOP('',(#140,#141,#142,#143)); 904 | #885=EDGE_LOOP('',(#144,#145,#146,#147)); 905 | #886=EDGE_LOOP('',(#148,#149,#150,#151)); 906 | #887=EDGE_LOOP('',(#152,#153,#154,#155,#156,#157,#158,#159,#160,#161,#162, 907 | #163)); 908 | #888=EDGE_LOOP('',(#164,#165,#166,#167,#168,#169,#170,#171,#172,#173,#174, 909 | #175)); 910 | #889=EDGE_LOOP('',(#176,#177,#178,#179,#180,#181,#182,#183,#184,#185,#186, 911 | #187)); 912 | #890=EDGE_LOOP('',(#188,#189,#190,#191)); 913 | #891=EDGE_LOOP('',(#192,#193,#194,#195)); 914 | #892=EDGE_LOOP('',(#196,#197,#198,#199)); 915 | #893=EDGE_LOOP('',(#200,#201,#202,#203)); 916 | #894=EDGE_LOOP('',(#204,#205,#206,#207)); 917 | #895=EDGE_LOOP('',(#208,#209,#210,#211)); 918 | #896=EDGE_LOOP('',(#212,#213,#214,#215)); 919 | #897=EDGE_LOOP('',(#216,#217,#218,#219)); 920 | #898=EDGE_LOOP('',(#220,#221,#222,#223)); 921 | #899=EDGE_LOOP('',(#224,#225,#226,#227)); 922 | #900=EDGE_LOOP('',(#228,#229,#230,#231)); 923 | #901=EDGE_LOOP('',(#232,#233,#234,#235)); 924 | #902=EDGE_LOOP('',(#236,#237,#238,#239)); 925 | #903=EDGE_LOOP('',(#240,#241,#242,#243)); 926 | #904=EDGE_LOOP('',(#244,#245,#246,#247)); 927 | #905=EDGE_LOOP('',(#248,#249,#250,#251)); 928 | #906=EDGE_LOOP('',(#252,#253,#254,#255)); 929 | #907=EDGE_LOOP('',(#256,#257,#258,#259)); 930 | #908=EDGE_LOOP('',(#260,#261,#262,#263)); 931 | #909=EDGE_LOOP('',(#264,#265,#266,#267)); 932 | #910=EDGE_LOOP('',(#268,#269,#270,#271)); 933 | #911=EDGE_LOOP('',(#272,#273,#274,#275)); 934 | #912=EDGE_LOOP('',(#276,#277,#278,#279)); 935 | #913=EDGE_LOOP('',(#280,#281,#282,#283)); 936 | #914=EDGE_LOOP('',(#284,#285,#286,#287)); 937 | #915=EDGE_LOOP('',(#288,#289,#290,#291)); 938 | #916=EDGE_LOOP('',(#292,#293,#294,#295)); 939 | #917=EDGE_LOOP('',(#296,#297,#298,#299)); 940 | #918=EDGE_LOOP('',(#300,#301,#302,#303)); 941 | #919=EDGE_LOOP('',(#304,#305,#306,#307)); 942 | #920=EDGE_LOOP('',(#308,#309,#310,#311)); 943 | #921=EDGE_LOOP('',(#312,#313,#314,#315)); 944 | #922=EDGE_LOOP('',(#316,#317,#318,#319)); 945 | #923=EDGE_LOOP('',(#320,#321,#322,#323)); 946 | #924=EDGE_LOOP('',(#324,#325,#326,#327)); 947 | #925=EDGE_LOOP('',(#328,#329,#330,#331)); 948 | #926=EDGE_LOOP('',(#332,#333,#334,#335,#336,#337)); 949 | #927=EDGE_LOOP('',(#338,#339,#340,#341)); 950 | #928=EDGE_LOOP('',(#342,#343,#344,#345)); 951 | #929=EDGE_LOOP('',(#346,#347,#348,#349,#350,#351)); 952 | #930=EDGE_LOOP('',(#352,#353,#354,#355,#356,#357)); 953 | #931=EDGE_LOOP('',(#358,#359,#360,#361)); 954 | #932=EDGE_LOOP('',(#362,#363,#364,#365,#366,#367)); 955 | #933=EDGE_LOOP('',(#368,#369,#370,#371)); 956 | #934=EDGE_LOOP('',(#372,#373,#374,#375)); 957 | #935=EDGE_LOOP('',(#376,#377,#378,#379)); 958 | #936=EDGE_LOOP('',(#380,#381,#382,#383)); 959 | #937=EDGE_LOOP('',(#384,#385,#386,#387)); 960 | #938=EDGE_LOOP('',(#388,#389,#390,#391)); 961 | #939=EDGE_LOOP('',(#392,#393,#394,#395)); 962 | #940=FACE_BOUND('',#872,.T.); 963 | #941=FACE_BOUND('',#873,.T.); 964 | #942=FACE_BOUND('',#874,.T.); 965 | #943=FACE_BOUND('',#875,.T.); 966 | #944=FACE_BOUND('',#876,.T.); 967 | #945=FACE_BOUND('',#877,.T.); 968 | #946=FACE_BOUND('',#878,.T.); 969 | #947=FACE_BOUND('',#879,.T.); 970 | #948=FACE_BOUND('',#880,.T.); 971 | #949=FACE_BOUND('',#881,.T.); 972 | #950=FACE_BOUND('',#882,.T.); 973 | #951=FACE_BOUND('',#883,.T.); 974 | #952=FACE_BOUND('',#884,.T.); 975 | #953=FACE_BOUND('',#885,.T.); 976 | #954=FACE_BOUND('',#886,.T.); 977 | #955=FACE_BOUND('',#887,.T.); 978 | #956=FACE_BOUND('',#888,.T.); 979 | #957=FACE_BOUND('',#889,.T.); 980 | #958=FACE_BOUND('',#890,.T.); 981 | #959=FACE_BOUND('',#891,.T.); 982 | #960=FACE_BOUND('',#892,.T.); 983 | #961=FACE_BOUND('',#893,.T.); 984 | #962=FACE_BOUND('',#894,.T.); 985 | #963=FACE_BOUND('',#895,.T.); 986 | #964=FACE_BOUND('',#896,.T.); 987 | #965=FACE_BOUND('',#897,.T.); 988 | #966=FACE_BOUND('',#898,.T.); 989 | #967=FACE_BOUND('',#899,.T.); 990 | #968=FACE_BOUND('',#900,.T.); 991 | #969=FACE_BOUND('',#901,.T.); 992 | #970=FACE_BOUND('',#902,.T.); 993 | #971=FACE_BOUND('',#903,.T.); 994 | #972=FACE_BOUND('',#904,.T.); 995 | #973=FACE_BOUND('',#905,.T.); 996 | #974=FACE_BOUND('',#906,.T.); 997 | #975=FACE_BOUND('',#907,.T.); 998 | #976=FACE_BOUND('',#908,.T.); 999 | #977=FACE_BOUND('',#909,.T.); 1000 | #978=FACE_BOUND('',#910,.T.); 1001 | #979=FACE_BOUND('',#911,.T.); 1002 | #980=FACE_BOUND('',#912,.T.); 1003 | #981=FACE_BOUND('',#913,.T.); 1004 | #982=FACE_BOUND('',#914,.T.); 1005 | #983=FACE_BOUND('',#915,.T.); 1006 | #984=FACE_BOUND('',#916,.T.); 1007 | #985=FACE_BOUND('',#917,.T.); 1008 | #986=FACE_BOUND('',#918,.T.); 1009 | #987=FACE_BOUND('',#919,.T.); 1010 | #988=FACE_BOUND('',#920,.T.); 1011 | #989=FACE_BOUND('',#921,.T.); 1012 | #990=FACE_BOUND('',#922,.T.); 1013 | #991=FACE_BOUND('',#923,.T.); 1014 | #992=FACE_BOUND('',#924,.T.); 1015 | #993=FACE_BOUND('',#925,.T.); 1016 | #994=FACE_BOUND('',#926,.T.); 1017 | #995=FACE_BOUND('',#927,.T.); 1018 | #996=FACE_BOUND('',#928,.T.); 1019 | #997=FACE_BOUND('',#929,.T.); 1020 | #998=FACE_BOUND('',#930,.T.); 1021 | #999=FACE_BOUND('',#931,.T.); 1022 | #1000=FACE_BOUND('',#932,.T.); 1023 | #1001=FACE_BOUND('',#933,.T.); 1024 | #1002=FACE_BOUND('',#934,.T.); 1025 | #1003=FACE_BOUND('',#935,.T.); 1026 | #1004=FACE_BOUND('',#936,.T.); 1027 | #1005=FACE_BOUND('',#937,.T.); 1028 | #1006=FACE_BOUND('',#938,.T.); 1029 | #1007=FACE_BOUND('',#939,.T.); 1030 | #1008=PLANE('',#1123); 1031 | #1009=PLANE('',#1130); 1032 | #1010=PLANE('',#1134); 1033 | #1011=PLANE('',#1138); 1034 | #1012=PLANE('',#1142); 1035 | #1013=PLANE('',#1146); 1036 | #1014=PLANE('',#1150); 1037 | #1015=PLANE('',#1154); 1038 | #1016=PLANE('',#1161); 1039 | #1017=PLANE('',#1169); 1040 | #1018=PLANE('',#1170); 1041 | #1019=PLANE('',#1173); 1042 | #1020=PLANE('',#1174); 1043 | #1021=PLANE('',#1177); 1044 | #1022=PLANE('',#1178); 1045 | #1023=PLANE('',#1180); 1046 | #1024=PLANE('',#1183); 1047 | #1025=PLANE('',#1186); 1048 | #1026=PLANE('',#1189); 1049 | #1027=PLANE('',#1192); 1050 | #1028=PLANE('',#1195); 1051 | #1029=PLANE('',#1199); 1052 | #1030=PLANE('',#1200); 1053 | #1031=PLANE('',#1203); 1054 | #1032=PLANE('',#1204); 1055 | #1033=PLANE('',#1207); 1056 | #1034=PLANE('',#1208); 1057 | #1035=PLANE('',#1210); 1058 | #1036=PLANE('',#1213); 1059 | #1037=PLANE('',#1214); 1060 | #1038=PLANE('',#1215); 1061 | #1039=PLANE('',#1218); 1062 | #1040=PLANE('',#1221); 1063 | #1041=PLANE('',#1222); 1064 | #1042=PLANE('',#1225); 1065 | #1043=PLANE('',#1226); 1066 | #1044=PLANE('',#1227); 1067 | #1045=ADVANCED_FACE('',(#940,#941,#942),#1008,.T.); 1068 | #1046=ADVANCED_FACE('',(#943),#1009,.T.); 1069 | #1047=ADVANCED_FACE('',(#944),#24,.T.); 1070 | #1048=ADVANCED_FACE('',(#945),#1010,.T.); 1071 | #1049=ADVANCED_FACE('',(#946),#25,.T.); 1072 | #1050=ADVANCED_FACE('',(#947),#1011,.T.); 1073 | #1051=ADVANCED_FACE('',(#948),#26,.T.); 1074 | #1052=ADVANCED_FACE('',(#949),#1012,.T.); 1075 | #1053=ADVANCED_FACE('',(#950),#27,.T.); 1076 | #1054=ADVANCED_FACE('',(#951),#1013,.T.); 1077 | #1055=ADVANCED_FACE('',(#952),#28,.T.); 1078 | #1056=ADVANCED_FACE('',(#953),#1014,.T.); 1079 | #1057=ADVANCED_FACE('',(#954),#29,.T.); 1080 | #1058=ADVANCED_FACE('',(#955),#1015,.F.); 1081 | #1059=ADVANCED_FACE('',(#956,#957),#1016,.T.); 1082 | #1060=ADVANCED_FACE('',(#958),#12,.T.); 1083 | #1061=ADVANCED_FACE('',(#959),#1017,.T.); 1084 | #1062=ADVANCED_FACE('',(#960),#1018,.T.); 1085 | #1063=ADVANCED_FACE('',(#961),#13,.T.); 1086 | #1064=ADVANCED_FACE('',(#962),#14,.T.); 1087 | #1065=ADVANCED_FACE('',(#963),#1019,.T.); 1088 | #1066=ADVANCED_FACE('',(#964),#1020,.T.); 1089 | #1067=ADVANCED_FACE('',(#965),#15,.T.); 1090 | #1068=ADVANCED_FACE('',(#966),#16,.T.); 1091 | #1069=ADVANCED_FACE('',(#967),#1021,.T.); 1092 | #1070=ADVANCED_FACE('',(#968),#1022,.T.); 1093 | #1071=ADVANCED_FACE('',(#969),#17,.T.); 1094 | #1072=ADVANCED_FACE('',(#970),#1023,.F.); 1095 | #1073=ADVANCED_FACE('',(#971),#30,.F.); 1096 | #1074=ADVANCED_FACE('',(#972),#1024,.F.); 1097 | #1075=ADVANCED_FACE('',(#973),#31,.F.); 1098 | #1076=ADVANCED_FACE('',(#974),#1025,.F.); 1099 | #1077=ADVANCED_FACE('',(#975),#32,.F.); 1100 | #1078=ADVANCED_FACE('',(#976),#1026,.F.); 1101 | #1079=ADVANCED_FACE('',(#977),#33,.F.); 1102 | #1080=ADVANCED_FACE('',(#978),#1027,.F.); 1103 | #1081=ADVANCED_FACE('',(#979),#34,.F.); 1104 | #1082=ADVANCED_FACE('',(#980),#1028,.F.); 1105 | #1083=ADVANCED_FACE('',(#981),#35,.F.); 1106 | #1084=ADVANCED_FACE('',(#982),#18,.F.); 1107 | #1085=ADVANCED_FACE('',(#983),#1029,.F.); 1108 | #1086=ADVANCED_FACE('',(#984),#1030,.F.); 1109 | #1087=ADVANCED_FACE('',(#985),#19,.F.); 1110 | #1088=ADVANCED_FACE('',(#986),#20,.F.); 1111 | #1089=ADVANCED_FACE('',(#987),#1031,.F.); 1112 | #1090=ADVANCED_FACE('',(#988),#1032,.F.); 1113 | #1091=ADVANCED_FACE('',(#989),#21,.F.); 1114 | #1092=ADVANCED_FACE('',(#990),#22,.F.); 1115 | #1093=ADVANCED_FACE('',(#991),#1033,.F.); 1116 | #1094=ADVANCED_FACE('',(#992),#1034,.F.); 1117 | #1095=ADVANCED_FACE('',(#993),#23,.F.); 1118 | #1096=ADVANCED_FACE('',(#994),#1035,.F.); 1119 | #1097=ADVANCED_FACE('',(#995),#1036,.T.); 1120 | #1098=ADVANCED_FACE('',(#996),#1037,.F.); 1121 | #1099=ADVANCED_FACE('',(#997),#1038,.T.); 1122 | #1100=ADVANCED_FACE('',(#998),#1039,.T.); 1123 | #1101=ADVANCED_FACE('',(#999),#1040,.T.); 1124 | #1102=ADVANCED_FACE('',(#1000),#1041,.F.); 1125 | #1103=ADVANCED_FACE('',(#1001),#1042,.F.); 1126 | #1104=ADVANCED_FACE('',(#1002),#1043,.T.); 1127 | #1105=ADVANCED_FACE('',(#1003),#1044,.T.); 1128 | #1106=ADVANCED_FACE('',(#1004),#36,.T.); 1129 | #1107=ADVANCED_FACE('',(#1005),#37,.T.); 1130 | #1108=ADVANCED_FACE('',(#1006),#38,.T.); 1131 | #1109=ADVANCED_FACE('',(#1007),#39,.T.); 1132 | #1110=CLOSED_SHELL('',(#1045,#1046,#1047,#1048,#1049,#1050,#1051,#1052, 1133 | #1053,#1054,#1055,#1056,#1057,#1058,#1059,#1060,#1061,#1062,#1063,#1064, 1134 | #1065,#1066,#1067,#1068,#1069,#1070,#1071,#1072,#1073,#1074,#1075,#1076, 1135 | #1077,#1078,#1079,#1080,#1081,#1082,#1083,#1084,#1085,#1086,#1087,#1088, 1136 | #1089,#1090,#1091,#1092,#1093,#1094,#1095,#1096,#1097,#1098,#1099,#1100, 1137 | #1101,#1102,#1103,#1104,#1105,#1106,#1107,#1108,#1109)); 1138 | #1111=STYLED_ITEM('',(#1112),#1119); 1139 | #1112=PRESENTATION_STYLE_ASSIGNMENT((#1113)); 1140 | #1113=SURFACE_STYLE_USAGE(.BOTH.,#1114); 1141 | #1114=SURFACE_SIDE_STYLE('',(#1115)); 1142 | #1115=SURFACE_STYLE_FILL_AREA(#1116); 1143 | #1116=FILL_AREA_STYLE('',(#1117)); 1144 | #1117=FILL_AREA_STYLE_COLOUR('',#1118); 1145 | #1118=COLOUR_RGB('',0.615686274509804,0.811764705882353,0.929411764705882); 1146 | #1119=MANIFOLD_SOLID_BREP('Part 1',#1110); 1147 | #1120=SHAPE_DEFINITION_REPRESENTATION(#1888,#1121); 1148 | #1121=SHAPE_REPRESENTATION('Part 1',(#1122),#1883); 1149 | #1122=AXIS2_PLACEMENT_3D('',#1564,#1232,#1233); 1150 | #1123=AXIS2_PLACEMENT_3D('',#1565,#1234,#1235); 1151 | #1124=AXIS2_PLACEMENT_3D('',#1574,#1240,#1241); 1152 | #1125=AXIS2_PLACEMENT_3D('',#1579,#1243,#1244); 1153 | #1126=AXIS2_PLACEMENT_3D('',#1583,#1246,#1247); 1154 | #1127=AXIS2_PLACEMENT_3D('',#1587,#1249,#1250); 1155 | #1128=AXIS2_PLACEMENT_3D('',#1591,#1252,#1253); 1156 | #1129=AXIS2_PLACEMENT_3D('',#1595,#1255,#1256); 1157 | #1130=AXIS2_PLACEMENT_3D('',#1606,#1262,#1263); 1158 | #1131=AXIS2_PLACEMENT_3D('',#1615,#1268,#1269); 1159 | #1132=AXIS2_PLACEMENT_3D('',#1616,#1270,#1271); 1160 | #1133=AXIS2_PLACEMENT_3D('',#1620,#1273,#1274); 1161 | #1134=AXIS2_PLACEMENT_3D('',#1621,#1275,#1276); 1162 | #1135=AXIS2_PLACEMENT_3D('',#1627,#1280,#1281); 1163 | #1136=AXIS2_PLACEMENT_3D('',#1628,#1282,#1283); 1164 | #1137=AXIS2_PLACEMENT_3D('',#1632,#1285,#1286); 1165 | #1138=AXIS2_PLACEMENT_3D('',#1633,#1287,#1288); 1166 | #1139=AXIS2_PLACEMENT_3D('',#1639,#1292,#1293); 1167 | #1140=AXIS2_PLACEMENT_3D('',#1640,#1294,#1295); 1168 | #1141=AXIS2_PLACEMENT_3D('',#1644,#1297,#1298); 1169 | #1142=AXIS2_PLACEMENT_3D('',#1645,#1299,#1300); 1170 | #1143=AXIS2_PLACEMENT_3D('',#1651,#1304,#1305); 1171 | #1144=AXIS2_PLACEMENT_3D('',#1652,#1306,#1307); 1172 | #1145=AXIS2_PLACEMENT_3D('',#1656,#1309,#1310); 1173 | #1146=AXIS2_PLACEMENT_3D('',#1657,#1311,#1312); 1174 | #1147=AXIS2_PLACEMENT_3D('',#1663,#1316,#1317); 1175 | #1148=AXIS2_PLACEMENT_3D('',#1664,#1318,#1319); 1176 | #1149=AXIS2_PLACEMENT_3D('',#1668,#1321,#1322); 1177 | #1150=AXIS2_PLACEMENT_3D('',#1669,#1323,#1324); 1178 | #1151=AXIS2_PLACEMENT_3D('',#1675,#1328,#1329); 1179 | #1152=AXIS2_PLACEMENT_3D('',#1676,#1330,#1331); 1180 | #1153=AXIS2_PLACEMENT_3D('',#1677,#1332,#1333); 1181 | #1154=AXIS2_PLACEMENT_3D('',#1678,#1334,#1335); 1182 | #1155=AXIS2_PLACEMENT_3D('',#1679,#1336,#1337); 1183 | #1156=AXIS2_PLACEMENT_3D('',#1684,#1339,#1340); 1184 | #1157=AXIS2_PLACEMENT_3D('',#1688,#1342,#1343); 1185 | #1158=AXIS2_PLACEMENT_3D('',#1692,#1345,#1346); 1186 | #1159=AXIS2_PLACEMENT_3D('',#1696,#1348,#1349); 1187 | #1160=AXIS2_PLACEMENT_3D('',#1700,#1351,#1352); 1188 | #1161=AXIS2_PLACEMENT_3D('',#1703,#1354,#1355); 1189 | #1162=AXIS2_PLACEMENT_3D('',#1707,#1357,#1358); 1190 | #1163=AXIS2_PLACEMENT_3D('',#1711,#1360,#1361); 1191 | #1164=AXIS2_PLACEMENT_3D('',#1715,#1363,#1364); 1192 | #1165=AXIS2_PLACEMENT_3D('',#1719,#1366,#1367); 1193 | #1166=AXIS2_PLACEMENT_3D('',#1723,#1369,#1370); 1194 | #1167=AXIS2_PLACEMENT_3D('',#1727,#1372,#1373); 1195 | #1168=AXIS2_PLACEMENT_3D('',#1728,#1374,#1375); 1196 | #1169=AXIS2_PLACEMENT_3D('',#1731,#1378,#1379); 1197 | #1170=AXIS2_PLACEMENT_3D('',#1733,#1381,#1382); 1198 | #1171=AXIS2_PLACEMENT_3D('',#1735,#1384,#1385); 1199 | #1172=AXIS2_PLACEMENT_3D('',#1737,#1387,#1388); 1200 | #1173=AXIS2_PLACEMENT_3D('',#1739,#1390,#1391); 1201 | #1174=AXIS2_PLACEMENT_3D('',#1741,#1393,#1394); 1202 | #1175=AXIS2_PLACEMENT_3D('',#1743,#1396,#1397); 1203 | #1176=AXIS2_PLACEMENT_3D('',#1745,#1399,#1400); 1204 | #1177=AXIS2_PLACEMENT_3D('',#1747,#1402,#1403); 1205 | #1178=AXIS2_PLACEMENT_3D('',#1749,#1405,#1406); 1206 | #1179=AXIS2_PLACEMENT_3D('',#1751,#1408,#1409); 1207 | #1180=AXIS2_PLACEMENT_3D('',#1752,#1410,#1411); 1208 | #1181=AXIS2_PLACEMENT_3D('',#1758,#1415,#1416); 1209 | #1182=AXIS2_PLACEMENT_3D('',#1761,#1418,#1419); 1210 | #1183=AXIS2_PLACEMENT_3D('',#1762,#1420,#1421); 1211 | #1184=AXIS2_PLACEMENT_3D('',#1766,#1424,#1425); 1212 | #1185=AXIS2_PLACEMENT_3D('',#1769,#1427,#1428); 1213 | #1186=AXIS2_PLACEMENT_3D('',#1770,#1429,#1430); 1214 | #1187=AXIS2_PLACEMENT_3D('',#1774,#1433,#1434); 1215 | #1188=AXIS2_PLACEMENT_3D('',#1777,#1436,#1437); 1216 | #1189=AXIS2_PLACEMENT_3D('',#1778,#1438,#1439); 1217 | #1190=AXIS2_PLACEMENT_3D('',#1782,#1442,#1443); 1218 | #1191=AXIS2_PLACEMENT_3D('',#1785,#1445,#1446); 1219 | #1192=AXIS2_PLACEMENT_3D('',#1786,#1447,#1448); 1220 | #1193=AXIS2_PLACEMENT_3D('',#1790,#1451,#1452); 1221 | #1194=AXIS2_PLACEMENT_3D('',#1793,#1454,#1455); 1222 | #1195=AXIS2_PLACEMENT_3D('',#1794,#1456,#1457); 1223 | #1196=AXIS2_PLACEMENT_3D('',#1798,#1460,#1461); 1224 | #1197=AXIS2_PLACEMENT_3D('',#1799,#1462,#1463); 1225 | #1198=AXIS2_PLACEMENT_3D('',#1800,#1464,#1465); 1226 | #1199=AXIS2_PLACEMENT_3D('',#1803,#1468,#1469); 1227 | #1200=AXIS2_PLACEMENT_3D('',#1805,#1471,#1472); 1228 | #1201=AXIS2_PLACEMENT_3D('',#1807,#1474,#1475); 1229 | #1202=AXIS2_PLACEMENT_3D('',#1809,#1477,#1478); 1230 | #1203=AXIS2_PLACEMENT_3D('',#1811,#1480,#1481); 1231 | #1204=AXIS2_PLACEMENT_3D('',#1813,#1483,#1484); 1232 | #1205=AXIS2_PLACEMENT_3D('',#1815,#1486,#1487); 1233 | #1206=AXIS2_PLACEMENT_3D('',#1817,#1489,#1490); 1234 | #1207=AXIS2_PLACEMENT_3D('',#1819,#1492,#1493); 1235 | #1208=AXIS2_PLACEMENT_3D('',#1821,#1495,#1496); 1236 | #1209=AXIS2_PLACEMENT_3D('',#1823,#1498,#1499); 1237 | #1210=AXIS2_PLACEMENT_3D('',#1824,#1500,#1501); 1238 | #1211=AXIS2_PLACEMENT_3D('',#1828,#1503,#1504); 1239 | #1212=AXIS2_PLACEMENT_3D('',#1833,#1507,#1508); 1240 | #1213=AXIS2_PLACEMENT_3D('',#1834,#1509,#1510); 1241 | #1214=AXIS2_PLACEMENT_3D('',#1838,#1513,#1514); 1242 | #1215=AXIS2_PLACEMENT_3D('',#1842,#1517,#1518); 1243 | #1216=AXIS2_PLACEMENT_3D('',#1843,#1519,#1520); 1244 | #1217=AXIS2_PLACEMENT_3D('',#1847,#1522,#1523); 1245 | #1218=AXIS2_PLACEMENT_3D('',#1848,#1524,#1525); 1246 | #1219=AXIS2_PLACEMENT_3D('',#1852,#1527,#1528); 1247 | #1220=AXIS2_PLACEMENT_3D('',#1857,#1531,#1532); 1248 | #1221=AXIS2_PLACEMENT_3D('',#1858,#1533,#1534); 1249 | #1222=AXIS2_PLACEMENT_3D('',#1862,#1537,#1538); 1250 | #1223=AXIS2_PLACEMENT_3D('',#1863,#1539,#1540); 1251 | #1224=AXIS2_PLACEMENT_3D('',#1867,#1542,#1543); 1252 | #1225=AXIS2_PLACEMENT_3D('',#1870,#1545,#1546); 1253 | #1226=AXIS2_PLACEMENT_3D('',#1872,#1548,#1549); 1254 | #1227=AXIS2_PLACEMENT_3D('',#1875,#1552,#1553); 1255 | #1228=AXIS2_PLACEMENT_3D('',#1878,#1556,#1557); 1256 | #1229=AXIS2_PLACEMENT_3D('',#1879,#1558,#1559); 1257 | #1230=AXIS2_PLACEMENT_3D('',#1880,#1560,#1561); 1258 | #1231=AXIS2_PLACEMENT_3D('',#1881,#1562,#1563); 1259 | #1232=DIRECTION('',(0.,0.,1.)); 1260 | #1233=DIRECTION('',(1.,0.,0.)); 1261 | #1234=DIRECTION('',(0.,0.,1.)); 1262 | #1235=DIRECTION('',(1.,0.,0.)); 1263 | #1236=DIRECTION('',(0.,1.,0.)); 1264 | #1237=DIRECTION('',(-1.,3.61400724161835E-16,0.)); 1265 | #1238=DIRECTION('',(0.,1.,0.)); 1266 | #1239=DIRECTION('',(-1.,0.,0.)); 1267 | #1240=DIRECTION('',(0.,0.,1.)); 1268 | #1241=DIRECTION('',(1.,0.,0.)); 1269 | #1242=DIRECTION('',(-0.866025403784438,0.5,0.)); 1270 | #1243=DIRECTION('',(0.,0.,1.)); 1271 | #1244=DIRECTION('',(1.,0.,0.)); 1272 | #1245=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1273 | #1246=DIRECTION('',(0.,0.,1.)); 1274 | #1247=DIRECTION('',(1.,0.,0.)); 1275 | #1248=DIRECTION('',(0.,-1.,0.)); 1276 | #1249=DIRECTION('',(0.,0.,1.)); 1277 | #1250=DIRECTION('',(1.,0.,0.)); 1278 | #1251=DIRECTION('',(0.866025403784439,-0.5,0.)); 1279 | #1252=DIRECTION('',(0.,0.,1.)); 1280 | #1253=DIRECTION('',(1.,0.,0.)); 1281 | #1254=DIRECTION('',(0.866025403784439,0.5,0.)); 1282 | #1255=DIRECTION('',(0.,0.,1.)); 1283 | #1256=DIRECTION('',(1.,0.,0.)); 1284 | #1257=DIRECTION('',(0.,1.,0.)); 1285 | #1258=DIRECTION('',(0.,1.,0.)); 1286 | #1259=DIRECTION('',(1.,0.,0.)); 1287 | #1260=DIRECTION('',(0.,1.,0.)); 1288 | #1261=DIRECTION('',(1.,0.,0.)); 1289 | #1262=DIRECTION('',(-1.,0.,0.)); 1290 | #1263=DIRECTION('',(0.,0.,1.)); 1291 | #1264=DIRECTION('',(0.,0.,1.)); 1292 | #1265=DIRECTION('',(0.,-1.,0.)); 1293 | #1266=DIRECTION('',(0.,0.,1.)); 1294 | #1267=DIRECTION('',(0.,-1.,0.)); 1295 | #1268=DIRECTION('',(0.,0.,1.)); 1296 | #1269=DIRECTION('',(1.,0.,0.)); 1297 | #1270=DIRECTION('',(0.,0.,1.)); 1298 | #1271=DIRECTION('',(1.,0.,0.)); 1299 | #1272=DIRECTION('',(0.,0.,1.)); 1300 | #1273=DIRECTION('',(0.,0.,1.)); 1301 | #1274=DIRECTION('',(1.,0.,0.)); 1302 | #1275=DIRECTION('',(-0.5,-0.866025403784439,0.)); 1303 | #1276=DIRECTION('',(0.866025403784439,-0.5,0.)); 1304 | #1277=DIRECTION('',(0.866025403784439,-0.5,0.)); 1305 | #1278=DIRECTION('',(0.,0.,1.)); 1306 | #1279=DIRECTION('',(0.866025403784438,-0.5,0.)); 1307 | #1280=DIRECTION('',(0.,0.,1.)); 1308 | #1281=DIRECTION('',(1.,0.,0.)); 1309 | #1282=DIRECTION('',(0.,0.,1.)); 1310 | #1283=DIRECTION('',(1.,0.,0.)); 1311 | #1284=DIRECTION('',(0.,0.,1.)); 1312 | #1285=DIRECTION('',(0.,0.,1.)); 1313 | #1286=DIRECTION('',(1.,0.,0.)); 1314 | #1287=DIRECTION('',(0.5,-0.866025403784439,0.)); 1315 | #1288=DIRECTION('',(0.866025403784439,0.5,0.)); 1316 | #1289=DIRECTION('',(0.866025403784439,0.5,0.)); 1317 | #1290=DIRECTION('',(0.,0.,1.)); 1318 | #1291=DIRECTION('',(0.866025403784439,0.5,0.)); 1319 | #1292=DIRECTION('',(0.,0.,1.)); 1320 | #1293=DIRECTION('',(1.,0.,0.)); 1321 | #1294=DIRECTION('',(0.,0.,1.)); 1322 | #1295=DIRECTION('',(1.,0.,0.)); 1323 | #1296=DIRECTION('',(0.,0.,1.)); 1324 | #1297=DIRECTION('',(0.,0.,1.)); 1325 | #1298=DIRECTION('',(1.,0.,0.)); 1326 | #1299=DIRECTION('',(1.,0.,0.)); 1327 | #1300=DIRECTION('',(0.,0.,-1.)); 1328 | #1301=DIRECTION('',(0.,1.,0.)); 1329 | #1302=DIRECTION('',(0.,0.,1.)); 1330 | #1303=DIRECTION('',(0.,1.,0.)); 1331 | #1304=DIRECTION('',(0.,0.,1.)); 1332 | #1305=DIRECTION('',(1.,0.,0.)); 1333 | #1306=DIRECTION('',(0.,0.,1.)); 1334 | #1307=DIRECTION('',(1.,0.,0.)); 1335 | #1308=DIRECTION('',(0.,0.,1.)); 1336 | #1309=DIRECTION('',(0.,0.,1.)); 1337 | #1310=DIRECTION('',(1.,0.,0.)); 1338 | #1311=DIRECTION('',(0.5,0.866025403784439,0.)); 1339 | #1312=DIRECTION('',(-0.866025403784439,0.5,0.)); 1340 | #1313=DIRECTION('',(-0.866025403784439,0.5,0.)); 1341 | #1314=DIRECTION('',(0.,0.,1.)); 1342 | #1315=DIRECTION('',(-0.866025403784439,0.5,0.)); 1343 | #1316=DIRECTION('',(0.,0.,1.)); 1344 | #1317=DIRECTION('',(1.,0.,0.)); 1345 | #1318=DIRECTION('',(0.,0.,1.)); 1346 | #1319=DIRECTION('',(1.,0.,0.)); 1347 | #1320=DIRECTION('',(0.,0.,1.)); 1348 | #1321=DIRECTION('',(0.,0.,1.)); 1349 | #1322=DIRECTION('',(1.,0.,0.)); 1350 | #1323=DIRECTION('',(-0.5,0.866025403784439,0.)); 1351 | #1324=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1352 | #1325=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1353 | #1326=DIRECTION('',(0.,0.,1.)); 1354 | #1327=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1355 | #1328=DIRECTION('',(0.,0.,1.)); 1356 | #1329=DIRECTION('',(1.,0.,0.)); 1357 | #1330=DIRECTION('',(0.,0.,1.)); 1358 | #1331=DIRECTION('',(1.,0.,0.)); 1359 | #1332=DIRECTION('',(0.,0.,1.)); 1360 | #1333=DIRECTION('',(1.,0.,0.)); 1361 | #1334=DIRECTION('',(0.,0.,1.)); 1362 | #1335=DIRECTION('',(1.,0.,0.)); 1363 | #1336=DIRECTION('',(0.,0.,1.)); 1364 | #1337=DIRECTION('',(1.,0.,0.)); 1365 | #1338=DIRECTION('',(0.,1.,0.)); 1366 | #1339=DIRECTION('',(0.,0.,1.)); 1367 | #1340=DIRECTION('',(1.,0.,0.)); 1368 | #1341=DIRECTION('',(0.866025403784439,0.5,0.)); 1369 | #1342=DIRECTION('',(0.,0.,1.)); 1370 | #1343=DIRECTION('',(1.,0.,0.)); 1371 | #1344=DIRECTION('',(0.866025403784439,-0.5,0.)); 1372 | #1345=DIRECTION('',(0.,0.,1.)); 1373 | #1346=DIRECTION('',(1.,0.,0.)); 1374 | #1347=DIRECTION('',(0.,-1.,0.)); 1375 | #1348=DIRECTION('',(0.,0.,1.)); 1376 | #1349=DIRECTION('',(1.,0.,0.)); 1377 | #1350=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1378 | #1351=DIRECTION('',(0.,0.,1.)); 1379 | #1352=DIRECTION('',(1.,0.,0.)); 1380 | #1353=DIRECTION('',(-0.866025403784438,0.5,0.)); 1381 | #1354=DIRECTION('',(0.,0.,1.)); 1382 | #1355=DIRECTION('',(1.,0.,0.)); 1383 | #1356=DIRECTION('',(0.,-1.,0.)); 1384 | #1357=DIRECTION('',(0.,0.,1.)); 1385 | #1358=DIRECTION('',(1.,0.,0.)); 1386 | #1359=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1387 | #1360=DIRECTION('',(0.,0.,1.)); 1388 | #1361=DIRECTION('',(1.,0.,0.)); 1389 | #1362=DIRECTION('',(-0.866025403784439,0.5,0.)); 1390 | #1363=DIRECTION('',(0.,0.,1.)); 1391 | #1364=DIRECTION('',(1.,0.,0.)); 1392 | #1365=DIRECTION('',(0.,1.,0.)); 1393 | #1366=DIRECTION('',(0.,0.,1.)); 1394 | #1367=DIRECTION('',(1.,0.,0.)); 1395 | #1368=DIRECTION('',(0.866025403784439,0.5,0.)); 1396 | #1369=DIRECTION('',(0.,0.,1.)); 1397 | #1370=DIRECTION('',(1.,0.,0.)); 1398 | #1371=DIRECTION('',(0.866025403784439,-0.5,0.)); 1399 | #1372=DIRECTION('',(0.,0.,1.)); 1400 | #1373=DIRECTION('',(1.,0.,0.)); 1401 | #1374=DIRECTION('',(0.,0.,1.)); 1402 | #1375=DIRECTION('',(1.,0.,0.)); 1403 | #1376=DIRECTION('',(-0.707106781186548,1.2266347333467E-15,0.707106781186547)); 1404 | #1377=DIRECTION('',(0.353553390593274,0.612372435695794,-0.707106781186548)); 1405 | #1378=DIRECTION('',(-0.353553390593274,-0.612372435695794,-0.707106781186548)); 1406 | #1379=DIRECTION('',(-0.866025403784439,0.5,0.)); 1407 | #1380=DIRECTION('',(0.353553390593275,0.612372435695794,-0.707106781186548)); 1408 | #1381=DIRECTION('',(-0.707106781186548,0.,-0.707106781186547)); 1409 | #1382=DIRECTION('',(0.,1.,0.)); 1410 | #1383=DIRECTION('',(-0.707106781186547,-1.2266347333467E-15,0.707106781186548)); 1411 | #1384=DIRECTION('',(0.,0.,1.)); 1412 | #1385=DIRECTION('',(1.,0.,0.)); 1413 | #1386=DIRECTION('',(-0.353553390593274,0.612372435695794,-0.707106781186548)); 1414 | #1387=DIRECTION('',(0.,0.,1.)); 1415 | #1388=DIRECTION('',(1.,0.,0.)); 1416 | #1389=DIRECTION('',(-0.353553390593273,0.612372435695795,0.707106781186548)); 1417 | #1390=DIRECTION('',(0.353553390593274,-0.612372435695794,-0.707106781186548)); 1418 | #1391=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1419 | #1392=DIRECTION('',(-0.353553390593275,0.612372435695794,-0.707106781186547)); 1420 | #1393=DIRECTION('',(-0.353553390593273,0.612372435695794,-0.707106781186548)); 1421 | #1394=DIRECTION('',(0.866025403784439,0.5,0.)); 1422 | #1395=DIRECTION('',(-0.353553390593275,0.612372435695795,0.707106781186546)); 1423 | #1396=DIRECTION('',(0.,0.,1.)); 1424 | #1397=DIRECTION('',(1.,0.,0.)); 1425 | #1398=DIRECTION('',(-0.707106781186547,0.,-0.707106781186548)); 1426 | #1399=DIRECTION('',(0.,0.,1.)); 1427 | #1400=DIRECTION('',(1.,0.,0.)); 1428 | #1401=DIRECTION('',(0.353553390593275,0.612372435695794,0.707106781186548)); 1429 | #1402=DIRECTION('',(0.707106781186548,0.,-0.707106781186547)); 1430 | #1403=DIRECTION('',(0.,-1.,0.)); 1431 | #1404=DIRECTION('',(-0.707106781186547,0.,-0.707106781186548)); 1432 | #1405=DIRECTION('',(0.353553390593274,0.612372435695794,-0.707106781186548)); 1433 | #1406=DIRECTION('',(0.866025403784439,-0.5,0.)); 1434 | #1407=DIRECTION('',(0.353553390593274,0.612372435695795,0.707106781186547)); 1435 | #1408=DIRECTION('',(0.,0.,1.)); 1436 | #1409=DIRECTION('',(1.,0.,0.)); 1437 | #1410=DIRECTION('',(-1.,0.,0.)); 1438 | #1411=DIRECTION('',(0.,0.,1.)); 1439 | #1412=DIRECTION('',(0.,0.,1.)); 1440 | #1413=DIRECTION('',(0.,0.,1.)); 1441 | #1414=DIRECTION('',(0.,-1.,0.)); 1442 | #1415=DIRECTION('',(0.,0.,1.)); 1443 | #1416=DIRECTION('',(1.,0.,0.)); 1444 | #1417=DIRECTION('',(0.,0.,1.)); 1445 | #1418=DIRECTION('',(0.,0.,1.)); 1446 | #1419=DIRECTION('',(1.,0.,0.)); 1447 | #1420=DIRECTION('',(-0.5,-0.866025403784439,0.)); 1448 | #1421=DIRECTION('',(0.866025403784439,-0.5,0.)); 1449 | #1422=DIRECTION('',(0.,0.,1.)); 1450 | #1423=DIRECTION('',(0.866025403784438,-0.5,0.)); 1451 | #1424=DIRECTION('',(0.,0.,1.)); 1452 | #1425=DIRECTION('',(1.,0.,0.)); 1453 | #1426=DIRECTION('',(0.,0.,1.)); 1454 | #1427=DIRECTION('',(0.,0.,1.)); 1455 | #1428=DIRECTION('',(1.,0.,0.)); 1456 | #1429=DIRECTION('',(0.5,-0.866025403784439,0.)); 1457 | #1430=DIRECTION('',(0.866025403784439,0.5,0.)); 1458 | #1431=DIRECTION('',(0.,0.,1.)); 1459 | #1432=DIRECTION('',(0.866025403784439,0.5,6.70078870827232E-17)); 1460 | #1433=DIRECTION('',(0.,0.,1.)); 1461 | #1434=DIRECTION('',(1.,0.,0.)); 1462 | #1435=DIRECTION('',(0.,0.,1.)); 1463 | #1436=DIRECTION('',(0.,0.,1.)); 1464 | #1437=DIRECTION('',(1.,0.,0.)); 1465 | #1438=DIRECTION('',(1.,0.,0.)); 1466 | #1439=DIRECTION('',(0.,0.,-1.)); 1467 | #1440=DIRECTION('',(0.,0.,-1.)); 1468 | #1441=DIRECTION('',(0.,1.,0.)); 1469 | #1442=DIRECTION('',(0.,0.,1.)); 1470 | #1443=DIRECTION('',(1.,0.,0.)); 1471 | #1444=DIRECTION('',(0.,0.,1.)); 1472 | #1445=DIRECTION('',(0.,0.,1.)); 1473 | #1446=DIRECTION('',(1.,0.,0.)); 1474 | #1447=DIRECTION('',(0.5,0.866025403784439,0.)); 1475 | #1448=DIRECTION('',(-0.866025403784439,0.5,0.)); 1476 | #1449=DIRECTION('',(0.,0.,1.)); 1477 | #1450=DIRECTION('',(-0.866025403784439,0.5,-6.70078870827232E-17)); 1478 | #1451=DIRECTION('',(0.,0.,1.)); 1479 | #1452=DIRECTION('',(1.,0.,0.)); 1480 | #1453=DIRECTION('',(0.,0.,1.)); 1481 | #1454=DIRECTION('',(0.,0.,1.)); 1482 | #1455=DIRECTION('',(1.,0.,0.)); 1483 | #1456=DIRECTION('',(-0.5,0.866025403784439,0.)); 1484 | #1457=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1485 | #1458=DIRECTION('',(0.,0.,1.)); 1486 | #1459=DIRECTION('',(-0.866025403784439,-0.5,-6.70078870827232E-17)); 1487 | #1460=DIRECTION('',(0.,0.,1.)); 1488 | #1461=DIRECTION('',(1.,0.,0.)); 1489 | #1462=DIRECTION('',(0.,0.,1.)); 1490 | #1463=DIRECTION('',(1.,0.,0.)); 1491 | #1464=DIRECTION('',(0.,0.,1.)); 1492 | #1465=DIRECTION('',(1.,0.,0.)); 1493 | #1466=DIRECTION('',(0.707106781186547,0.,-0.707106781186548)); 1494 | #1467=DIRECTION('',(0.353553390593274,0.612372435695794,-0.707106781186548)); 1495 | #1468=DIRECTION('',(-0.353553390593274,-0.612372435695794,-0.707106781186548)); 1496 | #1469=DIRECTION('',(-0.866025403784439,0.5,0.)); 1497 | #1470=DIRECTION('',(-0.353553390593275,-0.612372435695794,0.707106781186548)); 1498 | #1471=DIRECTION('',(-0.707106781186548,0.,-0.707106781186547)); 1499 | #1472=DIRECTION('',(0.,1.,0.)); 1500 | #1473=DIRECTION('',(-0.707106781186548,-8.55459869586716E-16,0.707106781186548)); 1501 | #1474=DIRECTION('',(0.,0.,1.)); 1502 | #1475=DIRECTION('',(1.,0.,0.)); 1503 | #1476=DIRECTION('',(-0.353553390593274,0.612372435695795,-0.707106781186547)); 1504 | #1477=DIRECTION('',(0.,0.,1.)); 1505 | #1478=DIRECTION('',(1.,0.,0.)); 1506 | #1479=DIRECTION('',(0.353553390593274,-0.612372435695795,-0.707106781186547)); 1507 | #1480=DIRECTION('',(0.353553390593274,-0.612372435695794,-0.707106781186548)); 1508 | #1481=DIRECTION('',(-0.866025403784439,-0.5,0.)); 1509 | #1482=DIRECTION('',(0.353553390593273,-0.612372435695795,0.707106781186548)); 1510 | #1483=DIRECTION('',(-0.353553390593273,0.612372435695794,-0.707106781186548)); 1511 | #1484=DIRECTION('',(0.866025403784439,0.5,0.)); 1512 | #1485=DIRECTION('',(-0.353553390593275,0.612372435695794,0.707106781186548)); 1513 | #1486=DIRECTION('',(0.,0.,1.)); 1514 | #1487=DIRECTION('',(1.,0.,0.)); 1515 | #1488=DIRECTION('',(-0.707106781186547,0.,-0.707106781186548)); 1516 | #1489=DIRECTION('',(0.,0.,1.)); 1517 | #1490=DIRECTION('',(1.,0.,0.)); 1518 | #1491=DIRECTION('',(-0.353553390593274,-0.612372435695795,-0.707106781186547)); 1519 | #1492=DIRECTION('',(0.707106781186548,0.,-0.707106781186547)); 1520 | #1493=DIRECTION('',(0.,-1.,0.)); 1521 | #1494=DIRECTION('',(0.707106781186548,0.,0.707106781186547)); 1522 | #1495=DIRECTION('',(0.353553390593274,0.612372435695794,-0.707106781186548)); 1523 | #1496=DIRECTION('',(0.866025403784439,-0.5,0.)); 1524 | #1497=DIRECTION('',(0.353553390593274,0.612372435695795,0.707106781186547)); 1525 | #1498=DIRECTION('',(0.,0.,1.)); 1526 | #1499=DIRECTION('',(1.,0.,0.)); 1527 | #1500=DIRECTION('',(1.,0.,0.)); 1528 | #1501=DIRECTION('',(0.,0.,-1.)); 1529 | #1502=DIRECTION('',(0.,1.,0.)); 1530 | #1503=DIRECTION('',(1.,0.,0.)); 1531 | #1504=DIRECTION('',(0.,0.,-1.)); 1532 | #1505=DIRECTION('',(0.,0.,1.)); 1533 | #1506=DIRECTION('',(0.,0.,1.)); 1534 | #1507=DIRECTION('',(1.,0.,0.)); 1535 | #1508=DIRECTION('',(0.,0.,-1.)); 1536 | #1509=DIRECTION('',(0.,1.,0.)); 1537 | #1510=DIRECTION('',(0.,0.,1.)); 1538 | #1511=DIRECTION('',(-1.,0.,0.)); 1539 | #1512=DIRECTION('',(0.,0.,1.)); 1540 | #1513=DIRECTION('',(3.61400724161835E-16,1.,0.)); 1541 | #1514=DIRECTION('',(-1.,3.61400724161835E-16,0.)); 1542 | #1515=DIRECTION('',(0.,0.,1.)); 1543 | #1516=DIRECTION('',(-1.,3.61400724161835E-16,0.)); 1544 | #1517=DIRECTION('',(1.,0.,0.)); 1545 | #1518=DIRECTION('',(0.,0.,-1.)); 1546 | #1519=DIRECTION('',(1.,0.,0.)); 1547 | #1520=DIRECTION('',(0.,0.,-1.)); 1548 | #1521=DIRECTION('',(0.,1.,0.)); 1549 | #1522=DIRECTION('',(1.,0.,0.)); 1550 | #1523=DIRECTION('',(0.,0.,-1.)); 1551 | #1524=DIRECTION('',(1.,0.,0.)); 1552 | #1525=DIRECTION('',(0.,0.,-1.)); 1553 | #1526=DIRECTION('',(0.,1.,0.)); 1554 | #1527=DIRECTION('',(1.,0.,0.)); 1555 | #1528=DIRECTION('',(0.,0.,-1.)); 1556 | #1529=DIRECTION('',(0.,0.,1.)); 1557 | #1530=DIRECTION('',(0.,0.,1.)); 1558 | #1531=DIRECTION('',(1.,0.,0.)); 1559 | #1532=DIRECTION('',(0.,0.,-1.)); 1560 | #1533=DIRECTION('',(0.,-1.,0.)); 1561 | #1534=DIRECTION('',(0.,0.,-1.)); 1562 | #1535=DIRECTION('',(1.,0.,0.)); 1563 | #1536=DIRECTION('',(0.,0.,1.)); 1564 | #1537=DIRECTION('',(1.,0.,0.)); 1565 | #1538=DIRECTION('',(0.,0.,-1.)); 1566 | #1539=DIRECTION('',(1.,0.,0.)); 1567 | #1540=DIRECTION('',(0.,0.,-1.)); 1568 | #1541=DIRECTION('',(0.,1.,0.)); 1569 | #1542=DIRECTION('',(1.,0.,0.)); 1570 | #1543=DIRECTION('',(0.,0.,-1.)); 1571 | #1544=DIRECTION('',(0.,0.,1.)); 1572 | #1545=DIRECTION('',(0.,-1.,0.)); 1573 | #1546=DIRECTION('',(0.,0.,-1.)); 1574 | #1547=DIRECTION('',(1.,0.,0.)); 1575 | #1548=DIRECTION('',(0.,0.,1.)); 1576 | #1549=DIRECTION('',(1.,0.,0.)); 1577 | #1550=DIRECTION('',(-1.,0.,0.)); 1578 | #1551=DIRECTION('',(-1.,3.61400724161835E-16,0.)); 1579 | #1552=DIRECTION('',(0.,0.,1.)); 1580 | #1553=DIRECTION('',(1.,0.,0.)); 1581 | #1554=DIRECTION('',(1.,0.,0.)); 1582 | #1555=DIRECTION('',(1.,0.,0.)); 1583 | #1556=DIRECTION('',(1.,0.,0.)); 1584 | #1557=DIRECTION('',(0.,0.,-1.)); 1585 | #1558=DIRECTION('',(-1.,0.,0.)); 1586 | #1559=DIRECTION('',(0.,0.,1.)); 1587 | #1560=DIRECTION('',(-1.,0.,0.)); 1588 | #1561=DIRECTION('',(0.,0.,1.)); 1589 | #1562=DIRECTION('',(1.,-3.61400724161835E-16,0.)); 1590 | #1563=DIRECTION('',(3.61400724161835E-16,1.,0.)); 1591 | #1564=CARTESIAN_POINT('',(0.,0.,0.)); 1592 | #1565=CARTESIAN_POINT('',(0.,-1.7347234759768E-18,-0.0014)); 1593 | #1566=CARTESIAN_POINT('',(-0.00225,-1.7347234759768E-18,-0.0014)); 1594 | #1567=CARTESIAN_POINT('',(-0.00225,-0.0015,-0.0014)); 1595 | #1568=CARTESIAN_POINT('',(-0.00225,0.0015,-0.0014)); 1596 | #1569=CARTESIAN_POINT('',(-5.42101086242752E-19,-0.0015,-0.0014)); 1597 | #1570=CARTESIAN_POINT('',(-0.00345,-0.0015,-0.0014)); 1598 | #1571=CARTESIAN_POINT('',(-0.00345,-1.7347234759768E-18,-0.0014)); 1599 | #1572=CARTESIAN_POINT('',(-0.00345,0.0015,-0.0014)); 1600 | #1573=CARTESIAN_POINT('',(0.,0.0015,-0.0014)); 1601 | #1574=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.0014)); 1602 | #1575=CARTESIAN_POINT('',(-0.00823147186257615,-0.00562016745997869,-0.0014)); 1603 | #1576=CARTESIAN_POINT('',(-0.00898294372515229,-0.0043185800135384,-0.0014)); 1604 | #1577=CARTESIAN_POINT('',(-0.00449147186257615,-0.0077794574667479,-0.0014)); 1605 | #1578=CARTESIAN_POINT('',(-0.000751471862576142,-0.00993874747351711,-0.0014)); 1606 | #1579=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.0014)); 1607 | #1580=CARTESIAN_POINT('',(0.000751471862576136,-0.0099387474735171,-0.0014)); 1608 | #1581=CARTESIAN_POINT('',(0.00449147186257615,-0.0077794574667479,-0.0014)); 1609 | #1582=CARTESIAN_POINT('',(0.00823147186257615,-0.0056201674599787,-0.0014)); 1610 | #1583=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.0014)); 1611 | #1584=CARTESIAN_POINT('',(0.00898294372515229,-0.0043185800135384,-0.0014)); 1612 | #1585=CARTESIAN_POINT('',(0.00898294372515229,0.,-0.0014)); 1613 | #1586=CARTESIAN_POINT('',(0.00898294372515229,0.0043185800135384,-0.0014)); 1614 | #1587=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.0014)); 1615 | #1588=CARTESIAN_POINT('',(0.00823147186257615,0.0056201674599787,-0.0014)); 1616 | #1589=CARTESIAN_POINT('',(0.00449147186257615,0.0077794574667479,-0.0014)); 1617 | #1590=CARTESIAN_POINT('',(0.000751471862576145,0.0099387474735171,-0.0014)); 1618 | #1591=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.0014)); 1619 | #1592=CARTESIAN_POINT('',(-0.000751471862576136,0.0099387474735171,-0.0014)); 1620 | #1593=CARTESIAN_POINT('',(-0.00449147186257615,0.0077794574667479,-0.0014)); 1621 | #1594=CARTESIAN_POINT('',(-0.00823147186257615,0.00562016745997869,-0.0014)); 1622 | #1595=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.0014)); 1623 | #1596=CARTESIAN_POINT('',(-0.00898294372515229,0.00431858001353841,-0.0014)); 1624 | #1597=CARTESIAN_POINT('',(-0.00898294372515229,8.67361737988404E-19,-0.0014)); 1625 | #1598=CARTESIAN_POINT('',(0.00225,-1.7347234759768E-18,-0.0014)); 1626 | #1599=CARTESIAN_POINT('',(0.00225,-0.0015,-0.0014)); 1627 | #1600=CARTESIAN_POINT('',(0.00225,0.0015,-0.0014)); 1628 | #1601=CARTESIAN_POINT('',(0.,0.0015,-0.0014)); 1629 | #1602=CARTESIAN_POINT('',(0.00345,0.0015,-0.0014)); 1630 | #1603=CARTESIAN_POINT('',(0.00345,-1.7347234759768E-18,-0.0014)); 1631 | #1604=CARTESIAN_POINT('',(0.00345,-0.0015,-0.0014)); 1632 | #1605=CARTESIAN_POINT('',(0.,-0.0015,-0.0014)); 1633 | #1606=CARTESIAN_POINT('',(-0.01048,8.67361737988404E-19,-0.0026)); 1634 | #1607=CARTESIAN_POINT('',(-0.01048,0.0043185800135384,-0.0026)); 1635 | #1608=CARTESIAN_POINT('',(-0.01048,0.0043185800135384,-0.0016)); 1636 | #1609=CARTESIAN_POINT('',(-0.01048,0.0043185800135384,0.)); 1637 | #1610=CARTESIAN_POINT('',(-0.01048,-0.0043185800135384,-0.0016)); 1638 | #1611=CARTESIAN_POINT('',(-0.01048,-0.0043185800135384,-0.0016)); 1639 | #1612=CARTESIAN_POINT('',(-0.01048,-0.0043185800135384,-0.0026)); 1640 | #1613=CARTESIAN_POINT('',(-0.01048,-0.0043185800135384,0.)); 1641 | #1614=CARTESIAN_POINT('',(-0.01048,8.67361737988404E-19,0.)); 1642 | #1615=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.0026)); 1643 | #1616=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.0016)); 1644 | #1617=CARTESIAN_POINT('',(-0.00898,-0.00691665622489171,-0.0016)); 1645 | #1618=CARTESIAN_POINT('',(-0.00898,-0.00691665622489171,-0.0026)); 1646 | #1619=CARTESIAN_POINT('',(-0.00898,-0.00691665622489171,0.)); 1647 | #1620=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,0.)); 1648 | #1621=CARTESIAN_POINT('',(-0.00524,-0.00907594623166092,-0.0026)); 1649 | #1622=CARTESIAN_POINT('',(-0.0015,-0.0112352362384301,-0.0016)); 1650 | #1623=CARTESIAN_POINT('',(-0.0015,-0.0112352362384301,-0.0016)); 1651 | #1624=CARTESIAN_POINT('',(-0.0015,-0.0112352362384301,-0.0026)); 1652 | #1625=CARTESIAN_POINT('',(-0.0015,-0.0112352362384301,0.)); 1653 | #1626=CARTESIAN_POINT('',(-0.00524,-0.00907594623166092,0.)); 1654 | #1627=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.0026)); 1655 | #1628=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.0016)); 1656 | #1629=CARTESIAN_POINT('',(0.0015,-0.0112352362384301,-0.0016)); 1657 | #1630=CARTESIAN_POINT('',(0.0015,-0.0112352362384301,-0.0026)); 1658 | #1631=CARTESIAN_POINT('',(0.0015,-0.0112352362384301,0.)); 1659 | #1632=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,0.)); 1660 | #1633=CARTESIAN_POINT('',(0.00524,-0.00907594623166092,-0.0026)); 1661 | #1634=CARTESIAN_POINT('',(0.00898,-0.00691665622489171,-0.0016)); 1662 | #1635=CARTESIAN_POINT('',(0.00898,-0.00691665622489172,-0.0016)); 1663 | #1636=CARTESIAN_POINT('',(0.00898,-0.00691665622489172,-0.0026)); 1664 | #1637=CARTESIAN_POINT('',(0.00898,-0.00691665622489172,0.)); 1665 | #1638=CARTESIAN_POINT('',(0.00524,-0.00907594623166092,0.)); 1666 | #1639=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.0026)); 1667 | #1640=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.0016)); 1668 | #1641=CARTESIAN_POINT('',(0.01048,-0.0043185800135384,-0.0016)); 1669 | #1642=CARTESIAN_POINT('',(0.01048,-0.0043185800135384,-0.0026)); 1670 | #1643=CARTESIAN_POINT('',(0.01048,-0.0043185800135384,0.)); 1671 | #1644=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,0.)); 1672 | #1645=CARTESIAN_POINT('',(0.01048,0.,-0.0026)); 1673 | #1646=CARTESIAN_POINT('',(0.01048,0.0043185800135384,-0.0016)); 1674 | #1647=CARTESIAN_POINT('',(0.01048,0.0043185800135384,-0.0016)); 1675 | #1648=CARTESIAN_POINT('',(0.01048,0.0043185800135384,-0.0026)); 1676 | #1649=CARTESIAN_POINT('',(0.01048,0.0043185800135384,0.)); 1677 | #1650=CARTESIAN_POINT('',(0.01048,0.,0.)); 1678 | #1651=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.0026)); 1679 | #1652=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.0016)); 1680 | #1653=CARTESIAN_POINT('',(0.00898,0.00691665622489172,-0.0016)); 1681 | #1654=CARTESIAN_POINT('',(0.00898,0.00691665622489172,-0.0026)); 1682 | #1655=CARTESIAN_POINT('',(0.00898,0.00691665622489172,0.)); 1683 | #1656=CARTESIAN_POINT('',(0.00748,0.0043185800135384,0.)); 1684 | #1657=CARTESIAN_POINT('',(0.00524,0.00907594623166092,-0.0026)); 1685 | #1658=CARTESIAN_POINT('',(0.0015,0.0112352362384301,-0.0016)); 1686 | #1659=CARTESIAN_POINT('',(0.0015,0.0112352362384301,-0.0016)); 1687 | #1660=CARTESIAN_POINT('',(0.0015,0.0112352362384301,-0.0026)); 1688 | #1661=CARTESIAN_POINT('',(0.0015,0.0112352362384301,0.)); 1689 | #1662=CARTESIAN_POINT('',(0.00524,0.00907594623166092,0.)); 1690 | #1663=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.0026)); 1691 | #1664=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.0016)); 1692 | #1665=CARTESIAN_POINT('',(-0.0015,0.0112352362384301,-0.0016)); 1693 | #1666=CARTESIAN_POINT('',(-0.0015,0.0112352362384301,-0.0026)); 1694 | #1667=CARTESIAN_POINT('',(-0.0015,0.0112352362384301,0.)); 1695 | #1668=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,0.)); 1696 | #1669=CARTESIAN_POINT('',(-0.00524,0.00907594623166092,-0.0026)); 1697 | #1670=CARTESIAN_POINT('',(-0.00898,0.00691665622489171,-0.0016)); 1698 | #1671=CARTESIAN_POINT('',(-0.00898,0.00691665622489171,-0.0016)); 1699 | #1672=CARTESIAN_POINT('',(-0.00898,0.00691665622489171,-0.0026)); 1700 | #1673=CARTESIAN_POINT('',(-0.00898,0.00691665622489171,0.)); 1701 | #1674=CARTESIAN_POINT('',(-0.00524,0.00907594623166092,0.)); 1702 | #1675=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.0026)); 1703 | #1676=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.0016)); 1704 | #1677=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,0.)); 1705 | #1678=CARTESIAN_POINT('',(0.,-1.7347234759768E-18,-0.0026)); 1706 | #1679=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.0026)); 1707 | #1680=CARTESIAN_POINT('',(-0.00848,-0.00605063082110727,-0.0026)); 1708 | #1681=CARTESIAN_POINT('',(-0.00948,-0.0043185800135384,-0.0026)); 1709 | #1682=CARTESIAN_POINT('',(-0.00948,0.0043185800135384,-0.0026)); 1710 | #1683=CARTESIAN_POINT('',(-0.00948,0.00431858001353841,-0.0026)); 1711 | #1684=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.0026)); 1712 | #1685=CARTESIAN_POINT('',(-0.00848,0.00605063082110727,-0.0026)); 1713 | #1686=CARTESIAN_POINT('',(-0.001,0.0103692108346457,-0.0026)); 1714 | #1687=CARTESIAN_POINT('',(-0.001,0.0103692108346457,-0.0026)); 1715 | #1688=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.0026)); 1716 | #1689=CARTESIAN_POINT('',(0.001,0.0103692108346457,-0.0026)); 1717 | #1690=CARTESIAN_POINT('',(0.00848,0.00605063082110728,-0.0026)); 1718 | #1691=CARTESIAN_POINT('',(0.00848,0.00605063082110728,-0.0026)); 1719 | #1692=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.0026)); 1720 | #1693=CARTESIAN_POINT('',(0.00948,0.0043185800135384,-0.0026)); 1721 | #1694=CARTESIAN_POINT('',(0.00948,-0.0043185800135384,-0.0026)); 1722 | #1695=CARTESIAN_POINT('',(0.00948,-0.0043185800135384,-0.0026)); 1723 | #1696=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.0026)); 1724 | #1697=CARTESIAN_POINT('',(0.00848,-0.00605063082110728,-0.0026)); 1725 | #1698=CARTESIAN_POINT('',(0.001,-0.0103692108346457,-0.0026)); 1726 | #1699=CARTESIAN_POINT('',(0.001,-0.0103692108346457,-0.0026)); 1727 | #1700=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.0026)); 1728 | #1701=CARTESIAN_POINT('',(-0.001,-0.0103692108346457,-0.0026)); 1729 | #1702=CARTESIAN_POINT('',(-0.00848,-0.00605063082110727,-0.0026)); 1730 | #1703=CARTESIAN_POINT('',(0.,-1.7347234759768E-18,0.)); 1731 | #1704=CARTESIAN_POINT('',(-0.00928,-1.7347234759768E-18,0.)); 1732 | #1705=CARTESIAN_POINT('',(-0.00928,0.00431858001353841,0.)); 1733 | #1706=CARTESIAN_POINT('',(-0.00928,-0.0043185800135384,0.)); 1734 | #1707=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,0.)); 1735 | #1708=CARTESIAN_POINT('',(-0.00838,0.00587742574035039,8.67361737988404E-19)); 1736 | #1709=CARTESIAN_POINT('',(-0.00464,0.00803671574711959,0.)); 1737 | #1710=CARTESIAN_POINT('',(-0.0009,0.0101960057538888,0.)); 1738 | #1711=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,0.)); 1739 | #1712=CARTESIAN_POINT('',(0.0009,0.0101960057538888,0.)); 1740 | #1713=CARTESIAN_POINT('',(0.00464,0.00803671574711959,0.)); 1741 | #1714=CARTESIAN_POINT('',(0.00838,0.00587742574035039,0.)); 1742 | #1715=CARTESIAN_POINT('',(0.00748,0.0043185800135384,0.)); 1743 | #1716=CARTESIAN_POINT('',(0.00928,0.0043185800135384,0.)); 1744 | #1717=CARTESIAN_POINT('',(0.00928,-1.7347234759768E-18,0.)); 1745 | #1718=CARTESIAN_POINT('',(0.00928,-0.0043185800135384,0.)); 1746 | #1719=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,0.)); 1747 | #1720=CARTESIAN_POINT('',(0.00838,-0.00587742574035039,8.67361737988404E-19)); 1748 | #1721=CARTESIAN_POINT('',(0.00464,-0.00803671574711959,0.)); 1749 | #1722=CARTESIAN_POINT('',(0.0009,-0.0101960057538888,0.)); 1750 | #1723=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,0.)); 1751 | #1724=CARTESIAN_POINT('',(-0.0009,-0.0101960057538888,8.67361737988404E-19)); 1752 | #1725=CARTESIAN_POINT('',(-0.00464,-0.00803671574711959,0.)); 1753 | #1726=CARTESIAN_POINT('',(-0.00838,-0.00587742574035039,0.)); 1754 | #1727=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,0.)); 1755 | #1728=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.0016)); 1756 | #1729=CARTESIAN_POINT('',(-0.00948,-0.0043185800135384,-0.0026)); 1757 | #1730=CARTESIAN_POINT('',(-0.00898,-0.00691665622489171,-0.0016)); 1758 | #1731=CARTESIAN_POINT('',(-0.00524,-0.00907594623166092,-0.0016)); 1759 | #1732=CARTESIAN_POINT('',(-0.0015,-0.0112352362384301,-0.0016)); 1760 | #1733=CARTESIAN_POINT('',(-0.01048,8.67361737988404E-19,-0.0016)); 1761 | #1734=CARTESIAN_POINT('',(-0.00948,0.00431858001353841,-0.0026)); 1762 | #1735=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.0016)); 1763 | #1736=CARTESIAN_POINT('',(0.0015,-0.0112352362384301,-0.0016)); 1764 | #1737=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.0016)); 1765 | #1738=CARTESIAN_POINT('',(-0.00848,0.00605063082110728,-0.0026)); 1766 | #1739=CARTESIAN_POINT('',(0.00524,-0.00907594623166092,-0.0016)); 1767 | #1740=CARTESIAN_POINT('',(0.00898,-0.00691665622489171,-0.0016)); 1768 | #1741=CARTESIAN_POINT('',(-0.00524,0.00907594623166092,-0.0016)); 1769 | #1742=CARTESIAN_POINT('',(-0.001,0.0103692108346457,-0.0026)); 1770 | #1743=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.0016)); 1771 | #1744=CARTESIAN_POINT('',(0.01048,-0.0043185800135384,-0.0016)); 1772 | #1745=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.0016)); 1773 | #1746=CARTESIAN_POINT('',(0.001,0.0103692108346457,-0.0026)); 1774 | #1747=CARTESIAN_POINT('',(0.01048,0.,-0.0016)); 1775 | #1748=CARTESIAN_POINT('',(0.01048,0.0043185800135384,-0.0016)); 1776 | #1749=CARTESIAN_POINT('',(0.00524,0.00907594623166092,-0.0016)); 1777 | #1750=CARTESIAN_POINT('',(0.00848,0.00605063082110728,-0.0026)); 1778 | #1751=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.0016)); 1779 | #1752=CARTESIAN_POINT('',(-0.00928,8.67361737988404E-19,-0.0026)); 1780 | #1753=CARTESIAN_POINT('',(-0.00928,0.00431858001353841,-0.0026)); 1781 | #1754=CARTESIAN_POINT('',(-0.00928,0.00431858001353841,-0.00110294372515229)); 1782 | #1755=CARTESIAN_POINT('',(-0.00928,-0.0043185800135384,-0.0026)); 1783 | #1756=CARTESIAN_POINT('',(-0.00928,-0.0043185800135384,-0.00110294372515229)); 1784 | #1757=CARTESIAN_POINT('',(-0.00928,8.67361737988404E-19,-0.00110294372515229)); 1785 | #1758=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.0026)); 1786 | #1759=CARTESIAN_POINT('',(-0.00838,-0.00587742574035039,-0.0026)); 1787 | #1760=CARTESIAN_POINT('',(-0.00838,-0.00587742574035039,-0.00110294372515229)); 1788 | #1761=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.00110294372515229)); 1789 | #1762=CARTESIAN_POINT('',(-0.00464,-0.00803671574711959,-0.0026)); 1790 | #1763=CARTESIAN_POINT('',(-0.0009,-0.0101960057538888,-0.0026)); 1791 | #1764=CARTESIAN_POINT('',(-0.0009,-0.0101960057538888,-0.00110294372515229)); 1792 | #1765=CARTESIAN_POINT('',(-0.00464,-0.00803671574711959,-0.00110294372515229)); 1793 | #1766=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.0026)); 1794 | #1767=CARTESIAN_POINT('',(0.0009,-0.0101960057538888,-0.0026)); 1795 | #1768=CARTESIAN_POINT('',(0.0009,-0.0101960057538888,-0.00110294372515228)); 1796 | #1769=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.00110294372515229)); 1797 | #1770=CARTESIAN_POINT('',(0.00464,-0.00803671574711959,-0.0026)); 1798 | #1771=CARTESIAN_POINT('',(0.00838,-0.00587742574035039,-0.0026)); 1799 | #1772=CARTESIAN_POINT('',(0.00838,-0.00587742574035039,-0.00110294372515229)); 1800 | #1773=CARTESIAN_POINT('',(0.00464,-0.00803671574711959,-0.00110294372515228)); 1801 | #1774=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.0026)); 1802 | #1775=CARTESIAN_POINT('',(0.00928,-0.0043185800135384,-0.0026)); 1803 | #1776=CARTESIAN_POINT('',(0.00928,-0.0043185800135384,-0.00110294372515229)); 1804 | #1777=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.00110294372515229)); 1805 | #1778=CARTESIAN_POINT('',(0.00928,0.,-0.0026)); 1806 | #1779=CARTESIAN_POINT('',(0.00928,0.0043185800135384,-0.0026)); 1807 | #1780=CARTESIAN_POINT('',(0.00928,0.0043185800135384,-0.00110294372515229)); 1808 | #1781=CARTESIAN_POINT('',(0.00928,0.,-0.00110294372515229)); 1809 | #1782=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.0026)); 1810 | #1783=CARTESIAN_POINT('',(0.00838,0.00587742574035039,-0.0026)); 1811 | #1784=CARTESIAN_POINT('',(0.00838,0.00587742574035039,-0.00110294372515228)); 1812 | #1785=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.00110294372515229)); 1813 | #1786=CARTESIAN_POINT('',(0.00464,0.00803671574711959,-0.0026)); 1814 | #1787=CARTESIAN_POINT('',(0.0009,0.0101960057538888,-0.0026)); 1815 | #1788=CARTESIAN_POINT('',(0.0009,0.0101960057538888,-0.00110294372515229)); 1816 | #1789=CARTESIAN_POINT('',(0.00464,0.00803671574711959,-0.00110294372515228)); 1817 | #1790=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.0026)); 1818 | #1791=CARTESIAN_POINT('',(-0.0009,0.0101960057538888,-0.0026)); 1819 | #1792=CARTESIAN_POINT('',(-0.0009,0.0101960057538888,-0.00110294372515229)); 1820 | #1793=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.00110294372515229)); 1821 | #1794=CARTESIAN_POINT('',(-0.00464,0.00803671574711959,-0.0026)); 1822 | #1795=CARTESIAN_POINT('',(-0.00838,0.00587742574035039,-0.0026)); 1823 | #1796=CARTESIAN_POINT('',(-0.00838,0.00587742574035039,-0.00110294372515229)); 1824 | #1797=CARTESIAN_POINT('',(-0.00464,0.00803671574711959,-0.00110294372515228)); 1825 | #1798=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.0026)); 1826 | #1799=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.00110294372515229)); 1827 | #1800=CARTESIAN_POINT('',(-0.00748,-0.00431858001353841,-0.000751471862576144)); 1828 | #1801=CARTESIAN_POINT('',(-0.00963147186257614,-0.0043185800135384,-0.000751471862576144)); 1829 | #1802=CARTESIAN_POINT('',(-0.00855573593128808,-0.00618180930205676,-0.000751471862576143)); 1830 | #1803=CARTESIAN_POINT('',(-0.00481573593128807,-0.00834109930882596,-0.000751471862576143)); 1831 | #1804=CARTESIAN_POINT('',(-0.00107573593128807,-0.0105003893155952,-0.000751471862576144)); 1832 | #1805=CARTESIAN_POINT('',(-0.00963147186257614,8.67361737988404E-19,-0.000751471862576144)); 1833 | #1806=CARTESIAN_POINT('',(-0.00963147186257614,0.00431858001353841,-0.000751471862576143)); 1834 | #1807=CARTESIAN_POINT('',(1.0842021724855E-19,-0.00863716002707681,-0.000751471862576144)); 1835 | #1808=CARTESIAN_POINT('',(0.00107573593128806,-0.0105003893155952,-0.000751471862576143)); 1836 | #1809=CARTESIAN_POINT('',(-0.00748,0.00431858001353841,-0.000751471862576143)); 1837 | #1810=CARTESIAN_POINT('',(-0.00855573593128808,0.00618180930205676,-0.000751471862576142)); 1838 | #1811=CARTESIAN_POINT('',(0.00481573593128807,-0.00834109930882596,-0.000751471862576143)); 1839 | #1812=CARTESIAN_POINT('',(0.00855573593128808,-0.00618180930205676,-0.000751471862576144)); 1840 | #1813=CARTESIAN_POINT('',(-0.00481573593128807,0.00834109930882596,-0.000751471862576142)); 1841 | #1814=CARTESIAN_POINT('',(-0.00107573593128806,0.0105003893155952,-0.000751471862576144)); 1842 | #1815=CARTESIAN_POINT('',(0.00748,-0.0043185800135384,-0.000751471862576144)); 1843 | #1816=CARTESIAN_POINT('',(0.00963147186257614,-0.0043185800135384,-0.000751471862576144)); 1844 | #1817=CARTESIAN_POINT('',(5.09575021068187E-18,0.00863716002707681,-0.000751471862576144)); 1845 | #1818=CARTESIAN_POINT('',(0.00107573593128807,0.0105003893155952,-0.000751471862576143)); 1846 | #1819=CARTESIAN_POINT('',(0.00963147186257614,0.,-0.000751471862576144)); 1847 | #1820=CARTESIAN_POINT('',(0.00963147186257615,0.0043185800135384,-0.000751471862576143)); 1848 | #1821=CARTESIAN_POINT('',(0.00481573593128808,0.00834109930882596,-0.000751471862576143)); 1849 | #1822=CARTESIAN_POINT('',(0.00855573593128808,0.00618180930205676,-0.000751471862576143)); 1850 | #1823=CARTESIAN_POINT('',(0.00748,0.0043185800135384,-0.000751471862576143)); 1851 | #1824=CARTESIAN_POINT('',(-0.00345,2.16840434497101E-19,-0.002602)); 1852 | #1825=CARTESIAN_POINT('',(-0.00345,2.16840434497101E-19,0.002)); 1853 | #1826=CARTESIAN_POINT('',(-0.00345,-0.0003,0.002)); 1854 | #1827=CARTESIAN_POINT('',(-0.00345,0.0003,0.002)); 1855 | #1828=CARTESIAN_POINT('',(-0.00345,0.0003,0.0008)); 1856 | #1829=CARTESIAN_POINT('',(-0.00345,0.0015,0.0008)); 1857 | #1830=CARTESIAN_POINT('',(-0.00345,0.0015,-0.002602)); 1858 | #1831=CARTESIAN_POINT('',(-0.00345,-0.0015,-0.002602)); 1859 | #1832=CARTESIAN_POINT('',(-0.00345,-0.0015,0.0008)); 1860 | #1833=CARTESIAN_POINT('',(-0.00345,-0.0003,0.0008)); 1861 | #1834=CARTESIAN_POINT('',(-0.00285,0.0015,-0.002602)); 1862 | #1835=CARTESIAN_POINT('',(-0.00285,0.0015,0.0008)); 1863 | #1836=CARTESIAN_POINT('',(-0.00225,0.0015,0.0008)); 1864 | #1837=CARTESIAN_POINT('',(-0.00225,0.0015,-0.002602)); 1865 | #1838=CARTESIAN_POINT('',(-0.00285,-0.0015,-0.002602)); 1866 | #1839=CARTESIAN_POINT('',(-0.00225,-0.0015,-0.002602)); 1867 | #1840=CARTESIAN_POINT('',(-0.00225,-0.0015,0.0008)); 1868 | #1841=CARTESIAN_POINT('',(-0.00345,-0.0015,0.0008)); 1869 | #1842=CARTESIAN_POINT('',(-0.00225,-2.16840434497101E-19,-0.002602)); 1870 | #1843=CARTESIAN_POINT('',(-0.00225,0.0003,0.0008)); 1871 | #1844=CARTESIAN_POINT('',(-0.00225,0.0003,0.002)); 1872 | #1845=CARTESIAN_POINT('',(-0.00225,-2.16840434497101E-19,0.002)); 1873 | #1846=CARTESIAN_POINT('',(-0.00225,-0.0003,0.002)); 1874 | #1847=CARTESIAN_POINT('',(-0.00225,-0.0003,0.0008)); 1875 | #1848=CARTESIAN_POINT('',(0.00345,2.16840434497101E-19,-0.002602)); 1876 | #1849=CARTESIAN_POINT('',(0.00345,2.16840434497101E-19,0.002)); 1877 | #1850=CARTESIAN_POINT('',(0.00345,-0.0003,0.002)); 1878 | #1851=CARTESIAN_POINT('',(0.00345,0.0003,0.002)); 1879 | #1852=CARTESIAN_POINT('',(0.00345,-0.0003,0.0008)); 1880 | #1853=CARTESIAN_POINT('',(0.00345,-0.0015,0.0008)); 1881 | #1854=CARTESIAN_POINT('',(0.00345,-0.0015,-0.002602)); 1882 | #1855=CARTESIAN_POINT('',(0.00345,0.0015,-0.002602)); 1883 | #1856=CARTESIAN_POINT('',(0.00345,0.0015,0.0008)); 1884 | #1857=CARTESIAN_POINT('',(0.00345,0.0003,0.0008)); 1885 | #1858=CARTESIAN_POINT('',(0.00285,-0.0015,-0.002602)); 1886 | #1859=CARTESIAN_POINT('',(0.00285,-0.0015,0.0008)); 1887 | #1860=CARTESIAN_POINT('',(0.00225,-0.0015,0.0008)); 1888 | #1861=CARTESIAN_POINT('',(0.00225,-0.0015,-0.002602)); 1889 | #1862=CARTESIAN_POINT('',(0.00225,-2.16840434497101E-19,-0.002602)); 1890 | #1863=CARTESIAN_POINT('',(0.00225,-0.0003,0.0008)); 1891 | #1864=CARTESIAN_POINT('',(0.00225,-0.0003,0.002)); 1892 | #1865=CARTESIAN_POINT('',(0.00225,-2.16840434497101E-19,0.002)); 1893 | #1866=CARTESIAN_POINT('',(0.00225,0.0003,0.002)); 1894 | #1867=CARTESIAN_POINT('',(0.00225,0.0003,0.0008)); 1895 | #1868=CARTESIAN_POINT('',(0.00225,0.0015,0.0008)); 1896 | #1869=CARTESIAN_POINT('',(0.00225,0.0015,-0.002602)); 1897 | #1870=CARTESIAN_POINT('',(0.00285,0.0015,-0.002602)); 1898 | #1871=CARTESIAN_POINT('',(0.00345,0.0015,0.0008)); 1899 | #1872=CARTESIAN_POINT('',(0.,-1.7347234759768E-18,0.002)); 1900 | #1873=CARTESIAN_POINT('',(0.,0.0003,0.002)); 1901 | #1874=CARTESIAN_POINT('',(-0.00225,-0.0003,0.002)); 1902 | #1875=CARTESIAN_POINT('',(0.,-1.7347234759768E-18,0.002)); 1903 | #1876=CARTESIAN_POINT('',(0.,-0.0003,0.002)); 1904 | #1877=CARTESIAN_POINT('',(0.00225,0.0003,0.002)); 1905 | #1878=CARTESIAN_POINT('',(0.,-0.0003,0.0008)); 1906 | #1879=CARTESIAN_POINT('',(0.00285,0.0003,0.0008)); 1907 | #1880=CARTESIAN_POINT('',(0.,0.0003,0.0008)); 1908 | #1881=CARTESIAN_POINT('',(-0.00285,-0.0003,0.0008)); 1909 | #1882=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#1111), 1910 | #1883); 1911 | #1883=( 1912 | GEOMETRIC_REPRESENTATION_CONTEXT(3) 1913 | GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#1884)) 1914 | GLOBAL_UNIT_ASSIGNED_CONTEXT((#1887,#1886,#1885)) 1915 | REPRESENTATION_CONTEXT('Part 1','TOP_LEVEL_ASSEMBLY_PART') 1916 | ); 1917 | #1884=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(5.E-6),#1887, 1918 | 'DISTANCE_ACCURACY_VALUE','Maximum Tolerance applied to model'); 1919 | #1885=( 1920 | NAMED_UNIT(*) 1921 | SI_UNIT($,.STERADIAN.) 1922 | SOLID_ANGLE_UNIT() 1923 | ); 1924 | #1886=( 1925 | NAMED_UNIT(*) 1926 | PLANE_ANGLE_UNIT() 1927 | SI_UNIT($,.RADIAN.) 1928 | ); 1929 | #1887=( 1930 | LENGTH_UNIT() 1931 | NAMED_UNIT(*) 1932 | SI_UNIT($,.METRE.) 1933 | ); 1934 | #1888=PRODUCT_DEFINITION_SHAPE('','',#1889); 1935 | #1889=PRODUCT_DEFINITION('','',#1891,#1890); 1936 | #1890=PRODUCT_DEFINITION_CONTEXT('',#1897,'design'); 1937 | #1891=PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE('','',#1893, 1938 | .NOT_KNOWN.); 1939 | #1892=PRODUCT_RELATED_PRODUCT_CATEGORY('','',(#1893)); 1940 | #1893=PRODUCT('Part 1','Part 1','Part 1',(#1895)); 1941 | #1894=PRODUCT_CATEGORY('',''); 1942 | #1895=PRODUCT_CONTEXT('',#1897,'mechanical'); 1943 | #1896=APPLICATION_PROTOCOL_DEFINITION('international standard', 1944 | 'ap242_managed_model_based_3d_engineering',2011,#1897); 1945 | #1897=APPLICATION_CONTEXT('managed model based 3d engineering'); 1946 | ENDSEC; 1947 | END-ISO-10303-21; 1948 | -------------------------------------------------------------------------------- /doc/PCB_PCB_morph2_2024-01-19.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeafCutterLabs/morph/d61198118b1386a16fa40c31f6ede41da509ddde/doc/PCB_PCB_morph2_2024-01-19.pdf -------------------------------------------------------------------------------- /doc/Schematic_morph2_2024-01-19.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeafCutterLabs/morph/d61198118b1386a16fa40c31f6ede41da509ddde/doc/Schematic_morph2_2024-01-19.pdf -------------------------------------------------------------------------------- /media/v1top.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeafCutterLabs/morph/d61198118b1386a16fa40c31f6ede41da509ddde/media/v1top.jpg -------------------------------------------------------------------------------- /pcb/Gerber_V1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeafCutterLabs/morph/d61198118b1386a16fa40c31f6ede41da509ddde/pcb/Gerber_V1.zip -------------------------------------------------------------------------------- /software/QMK/config.h: -------------------------------------------------------------------------------- 1 | // Copyright 2022 Stefan Kerkmann 2 | // SPDX-License-Identifier: GPL-2.0-or-later 3 | 4 | #pragma once 5 | 6 | 7 | #define DEBUG_MATRIX_SCAN_RATE 8 | 9 | #define QMK_WAITING_TEST_BUSY_PIN GP24 10 | #define QMK_WAITING_TEST_YIELD_PIN GP25 11 | 12 | #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET 13 | #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP22 14 | #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U 15 | 16 | #define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_B 17 | 18 | #define AUDIO_PIN GP23 19 | #define AUDIO_PWM_DRIVER PWMD0 20 | #define AUDIO_PWM_CHANNEL RP2040_PWM_CHANNEL_A 21 | 22 | #define ADC_PIN GP29 23 | 24 | #define MIDI_ADVANCED 25 | 26 | #define ENCODERS_PAD_A { GP24, GP23, GP28, GP20} 27 | #define ENCODERS_PAD_B { GP25, GP22, GP29, GP21} 28 | #define ENCODER_RESOLUTION 2 29 | 30 | #define WS2812_DI_PIN GP15 31 | #define RGB_MATRIX_LED_COUNT 57 -------------------------------------------------------------------------------- /software/QMK/halconf.h: -------------------------------------------------------------------------------- 1 | // Copyright 2022 Stefan Kerkmann 2 | // SPDX-License-Identifier: GPL-2.0-or-later 3 | 4 | #pragma once 5 | 6 | #define HAL_USE_I2C TRUE 7 | #define HAL_USE_PWM TRUE 8 | #define HAL_USE_ADC TRUE 9 | 10 | #include_next 11 | -------------------------------------------------------------------------------- /software/QMK/info.json: -------------------------------------------------------------------------------- 1 | { 2 | "keyboard_name": "morph", 3 | "processor": "RP2040", 4 | "bootloader": "rp2040", 5 | "diode_direction": "COL2ROW", 6 | "manufacturer": "leafcutterlabs", 7 | "url": "leafcutterlabs.com", 8 | "maintainer": "qmk", 9 | "usb": { 10 | "vid": "0xCEEB", 11 | "pid": "0x0007", 12 | "device_version": "0.0.1" 13 | }, 14 | "matrix_pins": { 15 | "cols": ["GP29", "GP28", "GP27", "GP26", "GP13", "GP8", "GP6", "GP5", "GP4", "GP3"], 16 | "rows": ["GP14", "GP12", "GP11", "GP10", "GP9", "GP7"] 17 | }, 18 | "backlight": { 19 | "pin": "GP15" 20 | }, 21 | "ws2812": { 22 | "pin": "GP15" 23 | }, 24 | "rgblight": { 25 | "led_count": 57 26 | "animations": { 27 | "rgb_test": true 28 | } 29 | } 30 | "layout_aliases": { 31 | "LAYOUT": "LAYOUT_ortho_6x10" 32 | }, 33 | "layouts": { 34 | "LAYOUT_ortho_6x10": { 35 | "layout": [ 36 | {"matrix": [0, 0], "x": 0, "y": 0}, 37 | {"matrix": [0, 1], "x": 1, "y": 0}, 38 | {"matrix": [0, 2], "x": 2, "y": 0}, 39 | {"matrix": [0, 3], "x": 3, "y": 0}, 40 | {"matrix": [0, 4], "x": 4, "y": 0}, 41 | {"matrix": [0, 5], "x": 5, "y": 0}, 42 | {"matrix": [0, 6], "x": 6, "y": 0}, 43 | {"matrix": [0, 7], "x": 7, "y": 0}, 44 | {"matrix": [0, 8], "x": 8, "y": 0}, 45 | {"matrix": [0, 9], "x": 9, "y": 0}, 46 | 47 | {"matrix": [1, 0], "x": 0, "y": 1}, 48 | {"matrix": [1, 1], "x": 1, "y": 1}, 49 | {"matrix": [1, 2], "x": 2, "y": 1}, 50 | {"matrix": [1, 3], "x": 3, "y": 1}, 51 | {"matrix": [1, 4], "x": 4, "y": 1}, 52 | {"matrix": [1, 5], "x": 5, "y": 1}, 53 | {"matrix": [1, 6], "x": 6, "y": 1}, 54 | {"matrix": [1, 7], "x": 7, "y": 1}, 55 | {"matrix": [1, 8], "x": 8, "y": 1}, 56 | {"matrix": [1, 9], "x": 9, "y": 1}, 57 | 58 | {"matrix": [2, 0], "x": 0, "y": 2}, 59 | {"matrix": [2, 1], "x": 1, "y": 2}, 60 | {"matrix": [2, 2], "x": 2, "y": 2}, 61 | {"matrix": [2, 3], "x": 3, "y": 2}, 62 | {"matrix": [2, 4], "x": 4, "y": 2}, 63 | {"matrix": [2, 5], "x": 5, "y": 2}, 64 | {"matrix": [2, 6], "x": 6, "y": 2}, 65 | {"matrix": [2, 7], "x": 7, "y": 2}, 66 | {"matrix": [2, 8], "x": 8, "y": 2}, 67 | {"matrix": [2, 9], "x": 9, "y": 2}, 68 | 69 | {"matrix": [3, 0], "x": 0, "y": 3}, 70 | {"matrix": [3, 1], "x": 1, "y": 3}, 71 | {"matrix": [3, 2], "x": 2, "y": 3}, 72 | {"matrix": [3, 3], "x": 3, "y": 3}, 73 | {"matrix": [3, 4], "x": 4, "y": 3}, 74 | {"matrix": [3, 5], "x": 5, "y": 3}, 75 | {"matrix": [3, 6], "x": 6, "y": 3}, 76 | {"matrix": [3, 7], "x": 7, "y": 3}, 77 | {"matrix": [3, 8], "x": 8, "y": 3}, 78 | {"matrix": [3, 9], "x": 9, "y": 3}, 79 | 80 | {"matrix": [4, 0], "x": 0, "y": 4}, 81 | {"matrix": [4, 1], "x": 1, "y": 4}, 82 | {"matrix": [4, 2], "x": 2, "y": 4}, 83 | {"matrix": [4, 3], "x": 3, "y": 4}, 84 | {"matrix": [4, 4], "x": 4, "y": 4}, 85 | {"matrix": [4, 5], "x": 5, "y": 4}, 86 | {"matrix": [4, 6], "x": 6, "y": 4}, 87 | {"matrix": [4, 7], "x": 7, "y": 4}, 88 | {"matrix": [4, 8], "x": 8, "y": 4}, 89 | {"matrix": [4, 9], "x": 9, "y": 4}, 90 | 91 | {"matrix": [5, 0], "x": 0, "y": 5}, 92 | {"matrix": [5, 1], "x": 1, "y": 5}, 93 | {"matrix": [5, 2], "x": 2, "y": 5}, 94 | {"matrix": [5, 3], "x": 3, "y": 5}, 95 | {"matrix": [5, 4], "x": 4, "y": 5}, 96 | {"matrix": [5, 5], "x": 5, "y": 5}, 97 | {"matrix": [5, 6], "x": 6, "y": 5}, 98 | {"matrix": [5, 7], "x": 7, "y": 5}, 99 | {"matrix": [5, 8], "x": 8, "y": 5}, 100 | {"matrix": [5, 9], "x": 9, "y": 5} 101 | ] 102 | } 103 | } 104 | } 105 | -------------------------------------------------------------------------------- /software/QMK/keymaps/default/keymap.c: -------------------------------------------------------------------------------- 1 | /* Copyright 2018 Yiancar 2 | * 3 | * This program is free software: you can redistribute it and/or modify 4 | * it under the terms of the GNU General Public License as published by 5 | * the Free Software Foundation, either version 2 of the License, or 6 | * (at your option) any later version. 7 | * 8 | * This program is distributed in the hope that it will be useful, 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | * GNU General Public License for more details. 12 | * 13 | * You should have received a copy of the GNU General Public License 14 | * along with this program. If not, see . 15 | */ 16 | #include QMK_KEYBOARD_H 17 | 18 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 19 | [0] = LAYOUT_ortho_6x10( 20 | KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, 21 | KC_F1,KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, 22 | KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, 23 | KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, 24 | KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, 25 | KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH 26 | ), 27 | }; 28 | 29 | void matrix_init_user(void) { 30 | 31 | } 32 | 33 | void matrix_scan_user(void) { 34 | 35 | } 36 | 37 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { 38 | return true; 39 | } 40 | 41 | void led_set_user(uint8_t usb_led) { 42 | 43 | } 44 | -------------------------------------------------------------------------------- /software/QMK/keymaps/midi/keymap.c: -------------------------------------------------------------------------------- 1 | /* Copyright 2018 Yiancar 2 | * 3 | * This program is free software: you can redistribute it and/or modify 4 | * it under the terms of the GNU General Public License as published by 5 | * the Free Software Foundation, either version 2 of the License, or 6 | * (at your option) any later version. 7 | * 8 | * This program is distributed in the hope that it will be useful, 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | * GNU General Public License for more details. 12 | * 13 | * You should have received a copy of the GNU General Public License 14 | * along with this program. If not, see . 15 | */ 16 | #include QMK_KEYBOARD_H 17 | 18 | extern MidiDevice midi_device; 19 | 20 | enum custom_keycodes { 21 | MIDI_CC20 = SAFE_RANGE, 22 | MIDI_CC21, 23 | MIDI_CC22, 24 | MIDI_CC23, 25 | MIDI_CC24, 26 | MIDI_CC25, 27 | MIDI_CC26, 28 | MIDI_CC85, 29 | MIDI_CC86, 30 | MIDI_CC88, 31 | MIDI_CC89, 32 | MIDI_CC90, 33 | MIDI_CC102, 34 | MIDI_CC103, 35 | MIDI_CC104, 36 | MIDI_CC105, 37 | MIDI_CC106, 38 | MIDI_CC107, 39 | MIDI_CC108, 40 | MIDI_CC109, 41 | MIDI_CC110, 42 | MIDI_CC111, 43 | MIDI_CC112, 44 | MIDI_CC117, 45 | MIDI_CC118, 46 | MIDI_CC119, 47 | }; 48 | 49 | #define MIDI_CC_OFF 0 50 | #define MIDI_CC_ON 127 51 | 52 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { 53 | switch (keycode) { 54 | case MIDI_CC20: 55 | if (record->event.pressed) { 56 | midi_send_cc(&midi_device, midi_config.channel, 20, MIDI_CC_ON); 57 | } else { 58 | midi_send_cc(&midi_device, midi_config.channel, 20, MIDI_CC_OFF); 59 | } 60 | return true; 61 | case MIDI_CC21: 62 | if (record->event.pressed) { 63 | midi_send_cc(&midi_device, midi_config.channel, 21, MIDI_CC_ON); 64 | } else { 65 | midi_send_cc(&midi_device, midi_config.channel, 21, MIDI_CC_OFF); 66 | } 67 | return true; 68 | case MIDI_CC22: 69 | if (record->event.pressed) { 70 | midi_send_cc(&midi_device, midi_config.channel, 22, MIDI_CC_ON); 71 | } else { 72 | midi_send_cc(&midi_device, midi_config.channel, 22, MIDI_CC_OFF); 73 | } 74 | return true; 75 | case MIDI_CC23: 76 | if (record->event.pressed) { 77 | midi_send_cc(&midi_device, midi_config.channel, 23, MIDI_CC_ON); 78 | } else { 79 | midi_send_cc(&midi_device, midi_config.channel, 23, MIDI_CC_OFF); 80 | } 81 | return true; 82 | case MIDI_CC24: 83 | if (record->event.pressed) { 84 | midi_send_cc(&midi_device, midi_config.channel, 24, MIDI_CC_ON); 85 | } else { 86 | midi_send_cc(&midi_device, midi_config.channel, 24, MIDI_CC_OFF); 87 | } 88 | return true; 89 | case MIDI_CC25: 90 | if (record->event.pressed) { 91 | midi_send_cc(&midi_device, midi_config.channel, 25, MIDI_CC_ON); 92 | } else { 93 | midi_send_cc(&midi_device, midi_config.channel, 25, MIDI_CC_OFF); 94 | } 95 | return true; 96 | case MIDI_CC26: 97 | if (record->event.pressed) { 98 | midi_send_cc(&midi_device, midi_config.channel, 26, MIDI_CC_ON); 99 | } else { 100 | midi_send_cc(&midi_device, midi_config.channel, 26, MIDI_CC_OFF); 101 | } 102 | return true; 103 | case MIDI_CC85: 104 | if (record->event.pressed) { 105 | midi_send_cc(&midi_device, midi_config.channel, 85, MIDI_CC_ON); 106 | } else { 107 | midi_send_cc(&midi_device, midi_config.channel, 85, MIDI_CC_OFF); 108 | } 109 | return true; 110 | case MIDI_CC86: 111 | if (record->event.pressed) { 112 | midi_send_cc(&midi_device, midi_config.channel, 86, MIDI_CC_ON); 113 | } else { 114 | midi_send_cc(&midi_device, midi_config.channel, 86, MIDI_CC_OFF); 115 | } 116 | return true; 117 | case MIDI_CC88: 118 | if (record->event.pressed) { 119 | midi_send_cc(&midi_device, midi_config.channel, 88, MIDI_CC_ON); 120 | } else { 121 | midi_send_cc(&midi_device, midi_config.channel, 88, MIDI_CC_OFF); 122 | } 123 | return true; 124 | case MIDI_CC89: 125 | if (record->event.pressed) { 126 | midi_send_cc(&midi_device, midi_config.channel, 89, MIDI_CC_ON); 127 | } else { 128 | midi_send_cc(&midi_device, midi_config.channel, 89, MIDI_CC_OFF); 129 | } 130 | return true; 131 | case MIDI_CC90: 132 | if (record->event.pressed) { 133 | midi_send_cc(&midi_device, midi_config.channel, 90, MIDI_CC_ON); 134 | } else { 135 | midi_send_cc(&midi_device, midi_config.channel, 90, MIDI_CC_OFF); 136 | } 137 | return true; 138 | case MIDI_CC102: 139 | if (record->event.pressed) { 140 | midi_send_cc(&midi_device, midi_config.channel, 102, MIDI_CC_ON); 141 | } else { 142 | midi_send_cc(&midi_device, midi_config.channel, 102, MIDI_CC_OFF); 143 | } 144 | return true; 145 | case MIDI_CC103: 146 | if (record->event.pressed) { 147 | midi_send_cc(&midi_device, midi_config.channel, 103, MIDI_CC_ON); 148 | } else { 149 | midi_send_cc(&midi_device, midi_config.channel, 103, MIDI_CC_OFF); 150 | } 151 | return true; 152 | case MIDI_CC104: 153 | if (record->event.pressed) { 154 | midi_send_cc(&midi_device, midi_config.channel, 104, MIDI_CC_ON); 155 | } else { 156 | midi_send_cc(&midi_device, midi_config.channel, 104, MIDI_CC_OFF); 157 | } 158 | return true; 159 | case MIDI_CC105: 160 | if (record->event.pressed) { 161 | midi_send_cc(&midi_device, midi_config.channel, 105, MIDI_CC_ON); 162 | } else { 163 | midi_send_cc(&midi_device, midi_config.channel, 105, MIDI_CC_OFF); 164 | } 165 | return true; 166 | case MIDI_CC106: 167 | if (record->event.pressed) { 168 | midi_send_cc(&midi_device, midi_config.channel, 106, MIDI_CC_ON); 169 | } else { 170 | midi_send_cc(&midi_device, midi_config.channel, 106, MIDI_CC_OFF); 171 | } 172 | return true; 173 | case MIDI_CC107: 174 | if (record->event.pressed) { 175 | midi_send_cc(&midi_device, midi_config.channel, 107, MIDI_CC_ON); 176 | } else { 177 | midi_send_cc(&midi_device, midi_config.channel, 107, MIDI_CC_OFF); 178 | } 179 | return true; 180 | case MIDI_CC108: 181 | if (record->event.pressed) { 182 | midi_send_cc(&midi_device, midi_config.channel, 108, MIDI_CC_ON); 183 | } else { 184 | midi_send_cc(&midi_device, midi_config.channel, 108, MIDI_CC_OFF); 185 | } 186 | return true; 187 | case MIDI_CC109: 188 | if (record->event.pressed) { 189 | midi_send_cc(&midi_device, midi_config.channel, 109, MIDI_CC_ON); 190 | } else { 191 | midi_send_cc(&midi_device, midi_config.channel, 109, MIDI_CC_OFF); 192 | } 193 | return true; 194 | case MIDI_CC110: 195 | if (record->event.pressed) { 196 | midi_send_cc(&midi_device, midi_config.channel, 110, MIDI_CC_ON); 197 | } else { 198 | midi_send_cc(&midi_device, midi_config.channel, 110, MIDI_CC_OFF); 199 | } 200 | return true; 201 | case MIDI_CC111: 202 | if (record->event.pressed) { 203 | midi_send_cc(&midi_device, midi_config.channel, 111, MIDI_CC_ON); 204 | } else { 205 | midi_send_cc(&midi_device, midi_config.channel, 111, MIDI_CC_OFF); 206 | } 207 | return true; 208 | case MIDI_CC112: 209 | if (record->event.pressed) { 210 | midi_send_cc(&midi_device, midi_config.channel, 112, MIDI_CC_ON); 211 | } else { 212 | midi_send_cc(&midi_device, midi_config.channel, 112, MIDI_CC_OFF); 213 | } 214 | return true; 215 | case MIDI_CC117: 216 | if (record->event.pressed) { 217 | midi_send_cc(&midi_device, midi_config.channel, 117, MIDI_CC_ON); 218 | } else { 219 | midi_send_cc(&midi_device, midi_config.channel, 117, MIDI_CC_OFF); 220 | } 221 | return true; 222 | case MIDI_CC118: 223 | if (record->event.pressed) { 224 | midi_send_cc(&midi_device, midi_config.channel, 118, MIDI_CC_ON); 225 | } else { 226 | midi_send_cc(&midi_device, midi_config.channel, 118, MIDI_CC_OFF); 227 | } 228 | return true; 229 | case MIDI_CC119: 230 | if (record->event.pressed) { 231 | midi_send_cc(&midi_device, midi_config.channel, 119, MIDI_CC_ON); 232 | } else { 233 | midi_send_cc(&midi_device, midi_config.channel, 119, MIDI_CC_OFF); 234 | } 235 | return true; 236 | } 237 | return true; 238 | }; 239 | 240 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 241 | [0] = LAYOUT_ortho_6x10( 242 | MI_C2, MI_Db2, MI_Eb2, MI_F2, MI_G2, MI_A2, MI_B2, MI_Cs2, MI_Ds2, MI_E2, 243 | MI_Gb2, MI_Ab2, MI_Bb2, MI_C2, MI_D2, MI_E2, MI_Fs2, MI_Gs2, MI_As2, KC_NO, 244 | MI_C1, MI_Db1, MI_Eb1, MI_F1, MI_G1, MI_A1, MI_B1, MI_Cs1, MI_Ds1, MI_E1, 245 | MI_Gb1, MI_Ab1, MI_Bb1, MI_C1, MI_D1, MI_E1, MI_Fs1, MI_Gs1, MI_As1, KC_NO, 246 | MI_C, MI_Db, MI_Eb, MI_F, MI_G, MI_A, MI_B, MI_Cs, MI_Ds, MI_E, 247 | MI_Gb, MI_Ab, MI_Bb, MI_C, MI_D, MI_E, MI_Fs, MI_Gs, MI_As, KC_NO 248 | ), 249 | }; 250 | 251 | void matrix_init_user(void) { 252 | 253 | } 254 | 255 | void matrix_scan_user(void) { 256 | 257 | } 258 | 259 | void led_set_user(uint8_t usb_led) { 260 | 261 | } 262 | /* 263 | void housekeeping_task_user(void) { 264 | rgblight_setrgb_at(RGB_ORANGE, 0); 265 | rgblight_setrgb_at(RGB_WHITE, 18); 266 | rgblight_setrgb_at(RGB_PURPLE, 19); 267 | rgblight_setrgb_at(RGB_PINK, 37); 268 | rgblight_setrgb_at(RGB_ORANGE, 38); 269 | rgblight_setrgb_at(RGB_WHITE, 56); 270 | 271 | } 272 | */ 273 | /*#if defined(ENCODER_MAP_ENABLE) 274 | const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { 275 | [0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD) }, 276 | [1] = { ENCODER_CCW_CW(KC_2, KC_3) }, 277 | [2] = { ENCODER_CCW_CW(KC_4, KC_5) }, 278 | [3] = { ENCODER_CCW_CW(MI_A3, MI_A4) } 279 | }; 280 | #endif 281 | */ 282 | 283 | //midi_send_cc(&midi_device, midi_config.channel, 80, 30); -------------------------------------------------------------------------------- /software/QMK/keymaps/midi/rules.mk: -------------------------------------------------------------------------------- 1 | # Build Options 2 | # change yes to no to disable 3 | # 4 | BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite 5 | MOUSEKEY_ENABLE = no # Mouse keys 6 | EXTRAKEY_ENABLE = no # Audio control and System control 7 | CONSOLE_ENABLE = no # Console for debug 8 | COMMAND_ENABLE = no # Commands for debug and configuration 9 | NKRO_ENABLE = no # Enable N-Key Rollover 10 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality 11 | RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow 12 | WS2812_DRIVER = vendor 13 | AUDIO_ENABLE = no # Audio output 14 | ENCODER_ENABLE = no # Enable rotary encoders 15 | MIDI_ENABLE = yes -------------------------------------------------------------------------------- /software/QMK/keymaps/vial/config.h: -------------------------------------------------------------------------------- 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 | 3 | #pragma once 4 | 5 | #define MIDI_ADVANCED 6 | #define VIAL_KEYBOARD_UID {0x18, 0x69, 0xB7, 0x81, 0xFF, 0xED, 0x2D, 0x4A} 7 | 8 | //#define RGB_MATRIX_FRAMEBUFFER_EFFECTS 9 | //#define RGB_MATRIX_KEYPRESSES 10 | 11 | -------------------------------------------------------------------------------- /software/QMK/keymaps/vial/keymap.c: -------------------------------------------------------------------------------- 1 | /* Copyright 2018 Yiancar 2 | * 3 | * This program is free software: you can redistribute it and/or modify 4 | * it under the terms of the GNU General Public License as published by 5 | * the Free Software Foundation, either version 2 of the License, or 6 | * (at your option) any later version. 7 | * 8 | * This program is distributed in the hope that it will be useful, 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | * GNU General Public License for more details. 12 | * 13 | * You should have received a copy of the GNU General Public License 14 | * along with this program. If not, see . 15 | */ 16 | #include QMK_KEYBOARD_H 17 | 18 | extern MidiDevice midi_device; 19 | 20 | enum custom_keycodes { 21 | MIDI_CC20 = SAFE_RANGE, 22 | MIDI_CC21, 23 | MIDI_CC22, 24 | MIDI_CC23, 25 | MIDI_CC24, 26 | MIDI_CC25, 27 | MIDI_CC26, 28 | MIDI_CC85, 29 | MIDI_CC86, 30 | MIDI_CC88, 31 | MIDI_CC89, 32 | MIDI_CC90, 33 | MIDI_CC102, 34 | MIDI_CC103, 35 | MIDI_CC104, 36 | MIDI_CC105, 37 | MIDI_CC106, 38 | MIDI_CC107, 39 | MIDI_CC108, 40 | MIDI_CC109, 41 | MIDI_CC110, 42 | MIDI_CC111, 43 | MIDI_CC112, 44 | MIDI_CC117, 45 | MIDI_CC118, 46 | MIDI_CC119, 47 | }; 48 | 49 | #define MIDI_CC_OFF 0 50 | #define MIDI_CC_ON 127 51 | 52 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { 53 | switch (keycode) { 54 | case MIDI_CC20: 55 | if (record->event.pressed) { 56 | midi_send_cc(&midi_device, midi_config.channel, 20, MIDI_CC_ON); 57 | } else { 58 | midi_send_cc(&midi_device, midi_config.channel, 20, MIDI_CC_OFF); 59 | } 60 | return true; 61 | case MIDI_CC21: 62 | if (record->event.pressed) { 63 | midi_send_cc(&midi_device, midi_config.channel, 21, MIDI_CC_ON); 64 | } else { 65 | midi_send_cc(&midi_device, midi_config.channel, 21, MIDI_CC_OFF); 66 | } 67 | return true; 68 | case MIDI_CC22: 69 | if (record->event.pressed) { 70 | midi_send_cc(&midi_device, midi_config.channel, 22, MIDI_CC_ON); 71 | } else { 72 | midi_send_cc(&midi_device, midi_config.channel, 22, MIDI_CC_OFF); 73 | } 74 | return true; 75 | case MIDI_CC23: 76 | if (record->event.pressed) { 77 | midi_send_cc(&midi_device, midi_config.channel, 23, MIDI_CC_ON); 78 | } else { 79 | midi_send_cc(&midi_device, midi_config.channel, 23, MIDI_CC_OFF); 80 | } 81 | return true; 82 | case MIDI_CC24: 83 | if (record->event.pressed) { 84 | midi_send_cc(&midi_device, midi_config.channel, 24, MIDI_CC_ON); 85 | } else { 86 | midi_send_cc(&midi_device, midi_config.channel, 24, MIDI_CC_OFF); 87 | } 88 | return true; 89 | case MIDI_CC25: 90 | if (record->event.pressed) { 91 | midi_send_cc(&midi_device, midi_config.channel, 25, MIDI_CC_ON); 92 | } else { 93 | midi_send_cc(&midi_device, midi_config.channel, 25, MIDI_CC_OFF); 94 | } 95 | return true; 96 | case MIDI_CC26: 97 | if (record->event.pressed) { 98 | midi_send_cc(&midi_device, midi_config.channel, 26, MIDI_CC_ON); 99 | } else { 100 | midi_send_cc(&midi_device, midi_config.channel, 26, MIDI_CC_OFF); 101 | } 102 | return true; 103 | case MIDI_CC85: 104 | if (record->event.pressed) { 105 | midi_send_cc(&midi_device, midi_config.channel, 85, MIDI_CC_ON); 106 | } else { 107 | midi_send_cc(&midi_device, midi_config.channel, 85, MIDI_CC_OFF); 108 | } 109 | return true; 110 | case MIDI_CC86: 111 | if (record->event.pressed) { 112 | midi_send_cc(&midi_device, midi_config.channel, 86, MIDI_CC_ON); 113 | } else { 114 | midi_send_cc(&midi_device, midi_config.channel, 86, MIDI_CC_OFF); 115 | } 116 | return true; 117 | case MIDI_CC88: 118 | if (record->event.pressed) { 119 | midi_send_cc(&midi_device, midi_config.channel, 88, MIDI_CC_ON); 120 | } else { 121 | midi_send_cc(&midi_device, midi_config.channel, 88, MIDI_CC_OFF); 122 | } 123 | return true; 124 | case MIDI_CC89: 125 | if (record->event.pressed) { 126 | midi_send_cc(&midi_device, midi_config.channel, 89, MIDI_CC_ON); 127 | } else { 128 | midi_send_cc(&midi_device, midi_config.channel, 89, MIDI_CC_OFF); 129 | } 130 | return true; 131 | case MIDI_CC90: 132 | if (record->event.pressed) { 133 | midi_send_cc(&midi_device, midi_config.channel, 90, MIDI_CC_ON); 134 | } else { 135 | midi_send_cc(&midi_device, midi_config.channel, 90, MIDI_CC_OFF); 136 | } 137 | return true; 138 | case MIDI_CC102: 139 | if (record->event.pressed) { 140 | midi_send_cc(&midi_device, midi_config.channel, 102, MIDI_CC_ON); 141 | } else { 142 | midi_send_cc(&midi_device, midi_config.channel, 102, MIDI_CC_OFF); 143 | } 144 | return true; 145 | case MIDI_CC103: 146 | if (record->event.pressed) { 147 | midi_send_cc(&midi_device, midi_config.channel, 103, MIDI_CC_ON); 148 | } else { 149 | midi_send_cc(&midi_device, midi_config.channel, 103, MIDI_CC_OFF); 150 | } 151 | return true; 152 | case MIDI_CC104: 153 | if (record->event.pressed) { 154 | midi_send_cc(&midi_device, midi_config.channel, 104, MIDI_CC_ON); 155 | } else { 156 | midi_send_cc(&midi_device, midi_config.channel, 104, MIDI_CC_OFF); 157 | } 158 | return true; 159 | case MIDI_CC105: 160 | if (record->event.pressed) { 161 | midi_send_cc(&midi_device, midi_config.channel, 105, MIDI_CC_ON); 162 | } else { 163 | midi_send_cc(&midi_device, midi_config.channel, 105, MIDI_CC_OFF); 164 | } 165 | return true; 166 | case MIDI_CC106: 167 | if (record->event.pressed) { 168 | midi_send_cc(&midi_device, midi_config.channel, 106, MIDI_CC_ON); 169 | } else { 170 | midi_send_cc(&midi_device, midi_config.channel, 106, MIDI_CC_OFF); 171 | } 172 | return true; 173 | case MIDI_CC107: 174 | if (record->event.pressed) { 175 | midi_send_cc(&midi_device, midi_config.channel, 107, MIDI_CC_ON); 176 | } else { 177 | midi_send_cc(&midi_device, midi_config.channel, 107, MIDI_CC_OFF); 178 | } 179 | return true; 180 | case MIDI_CC108: 181 | if (record->event.pressed) { 182 | midi_send_cc(&midi_device, midi_config.channel, 108, MIDI_CC_ON); 183 | } else { 184 | midi_send_cc(&midi_device, midi_config.channel, 108, MIDI_CC_OFF); 185 | } 186 | return true; 187 | case MIDI_CC109: 188 | if (record->event.pressed) { 189 | midi_send_cc(&midi_device, midi_config.channel, 109, MIDI_CC_ON); 190 | } else { 191 | midi_send_cc(&midi_device, midi_config.channel, 109, MIDI_CC_OFF); 192 | } 193 | return true; 194 | case MIDI_CC110: 195 | if (record->event.pressed) { 196 | midi_send_cc(&midi_device, midi_config.channel, 110, MIDI_CC_ON); 197 | } else { 198 | midi_send_cc(&midi_device, midi_config.channel, 110, MIDI_CC_OFF); 199 | } 200 | return true; 201 | case MIDI_CC111: 202 | if (record->event.pressed) { 203 | midi_send_cc(&midi_device, midi_config.channel, 111, MIDI_CC_ON); 204 | } else { 205 | midi_send_cc(&midi_device, midi_config.channel, 111, MIDI_CC_OFF); 206 | } 207 | return true; 208 | case MIDI_CC112: 209 | if (record->event.pressed) { 210 | midi_send_cc(&midi_device, midi_config.channel, 112, MIDI_CC_ON); 211 | } else { 212 | midi_send_cc(&midi_device, midi_config.channel, 112, MIDI_CC_OFF); 213 | } 214 | return true; 215 | case MIDI_CC117: 216 | if (record->event.pressed) { 217 | midi_send_cc(&midi_device, midi_config.channel, 117, MIDI_CC_ON); 218 | } else { 219 | midi_send_cc(&midi_device, midi_config.channel, 117, MIDI_CC_OFF); 220 | } 221 | return true; 222 | case MIDI_CC118: 223 | if (record->event.pressed) { 224 | midi_send_cc(&midi_device, midi_config.channel, 118, MIDI_CC_ON); 225 | } else { 226 | midi_send_cc(&midi_device, midi_config.channel, 118, MIDI_CC_OFF); 227 | } 228 | return true; 229 | case MIDI_CC119: 230 | if (record->event.pressed) { 231 | midi_send_cc(&midi_device, midi_config.channel, 119, MIDI_CC_ON); 232 | } else { 233 | midi_send_cc(&midi_device, midi_config.channel, 119, MIDI_CC_OFF); 234 | } 235 | return true; 236 | } 237 | return true; 238 | }; 239 | 240 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 241 | [0] = LAYOUT_ortho_6x10( 242 | MI_C2, MI_Db2, MI_Eb2, MI_F2, MI_G2, MI_A2, MI_B2, MI_Cs2, MI_Ds2, MI_E2, 243 | MI_Gb2, MI_Ab2, MI_Bb2, MI_C2, MI_D2, MI_E2, MI_Fs2, MI_Gs2, MI_As2, KC_NO, 244 | MI_C1, MI_Db1, MI_Eb1, MI_F1, MI_G1, MI_A1, MI_B1, MI_Cs1, MI_Ds1, MI_E1, 245 | MI_Gb1, MI_Ab1, MI_Bb1, MI_C1, MI_D1, MI_E1, MI_Fs1, MI_Gs1, MI_As1, KC_NO, 246 | MI_C, MI_Db, MI_Eb, MI_F, MI_G, MI_A, MI_B, MI_Cs, MI_Ds, MI_E, 247 | MI_Gb, MI_Ab, MI_Bb, MI_C, MI_D, MI_E, MI_Fs, MI_Gs, MI_As, KC_NO 248 | ), 249 | }; 250 | 251 | void matrix_init_user(void) { 252 | 253 | } 254 | 255 | void matrix_scan_user(void) { 256 | 257 | } 258 | 259 | void led_set_user(uint8_t usb_led) { 260 | 261 | } 262 | /* 263 | void housekeeping_task_user(void) { 264 | rgblight_setrgb_at(RGB_ORANGE, 0); 265 | rgblight_setrgb_at(RGB_WHITE, 18); 266 | rgblight_setrgb_at(RGB_PURPLE, 19); 267 | rgblight_setrgb_at(RGB_PINK, 37); 268 | rgblight_setrgb_at(RGB_ORANGE, 38); 269 | rgblight_setrgb_at(RGB_WHITE, 56); 270 | 271 | } 272 | */ 273 | /*#if defined(ENCODER_MAP_ENABLE) 274 | const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { 275 | [0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD) }, 276 | [1] = { ENCODER_CCW_CW(KC_2, KC_3) }, 277 | [2] = { ENCODER_CCW_CW(KC_4, KC_5) }, 278 | [3] = { ENCODER_CCW_CW(MI_A3, MI_A4) } 279 | }; 280 | #endif 281 | */ 282 | 283 | //midi_send_cc(&midi_device, midi_config.channel, 80, 30); -------------------------------------------------------------------------------- /software/QMK/keymaps/vial/rules.mk: -------------------------------------------------------------------------------- 1 | # Build Options 2 | # change yes to no to disable 3 | # 4 | BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite 5 | MOUSEKEY_ENABLE = no # Mouse keys 6 | EXTRAKEY_ENABLE = no # Audio control and System control 7 | CONSOLE_ENABLE = no # Console for debug 8 | COMMAND_ENABLE = no # Commands for debug and configuration 9 | NKRO_ENABLE = no # Enable N-Key Rollover 10 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality 11 | RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow 12 | WS2812_DRIVER = vendor 13 | AUDIO_ENABLE = no # Audio output 14 | ENCODER_ENABLE = no # Enable rotary encoders 15 | MIDI_ENABLE = yes 16 | VIA_ENABLE = yes 17 | VIAL_ENABLE = yes 18 | VIAL_INSECURE = yes 19 | RGB_MATRIX_ENABLE = no 20 | RGB_MATRIX_DRIVER = ws2812 21 | VIALRGB_ENABLE = no -------------------------------------------------------------------------------- /software/QMK/keymaps/vial/vial.json: -------------------------------------------------------------------------------- 1 | { "vial": { 2 | "midi": "advanced" 3 | }, 4 | "lighting": "none", 5 | "matrix": { 6 | "rows": 6, 7 | "cols": 10 8 | }, 9 | "layouts": { 10 | "keymap":[ 11 | [ 12 | "0,0", 13 | "0,1", 14 | "0,2", 15 | "0,3", 16 | "0,4", 17 | "0,5", 18 | "0,6", 19 | "0,7", 20 | "0,8", 21 | "0,9" 22 | ], 23 | [ 24 | { 25 | "x": 0.5 26 | }, 27 | "1,0", 28 | "1,1", 29 | "1,2", 30 | "1,3", 31 | "1,4", 32 | "1,5", 33 | "1,6", 34 | "1,7", 35 | "1,8" 36 | ], 37 | [ 38 | "2,0", 39 | "2,1", 40 | "2,2", 41 | "2,3", 42 | "2,4", 43 | "2,5", 44 | "2,6", 45 | "2,7", 46 | "2,8", 47 | "2,9" 48 | ], 49 | [ 50 | { 51 | "x": 0.5 52 | }, 53 | "3,0", 54 | "3,1", 55 | "3,2", 56 | "3,3", 57 | "3,4", 58 | "3,5", 59 | "3,6", 60 | "3,7", 61 | "3,8" 62 | ], 63 | [ 64 | "4,0", 65 | "4,1", 66 | "4,2", 67 | "4,3", 68 | "4,4", 69 | "4,5", 70 | "4,6", 71 | "4,7", 72 | "4,8", 73 | "4,9" 74 | ], 75 | [ 76 | { 77 | "x": 0.5 78 | }, 79 | "5,0", 80 | "5,1", 81 | "5,2", 82 | "5,3", 83 | "5,4", 84 | "5,5", 85 | "5,6", 86 | "5,7", 87 | "5,8" 88 | ] 89 | ] 90 | } 91 | } -------------------------------------------------------------------------------- /software/QMK/mcuconf.h: -------------------------------------------------------------------------------- 1 | // Copyright 2022 Stefan Kerkmann 2 | // SPDX-License-Identifier: GPL-2.0-or-later 3 | 4 | #pragma once 5 | 6 | #include_next 7 | 8 | #undef RP_PWM_USE_PWM0 9 | #define RP_PWM_USE_PWM0 TRUE 10 | 11 | #undef RP_PWM_USE_PWM4 12 | #define RP_PWM_USE_PWM4 TRUE -------------------------------------------------------------------------------- /software/QMK/readme.md: -------------------------------------------------------------------------------- 1 | # Raspberry Pi 2040 onekey 2 | 3 | To trigger keypress, short together pins *GP4* and *GP5*. 4 | 5 | Double-tap reset to enter bootloader mode. Copy the built uf2 file to the device by dragging the file to the new USB disk. 6 | 7 | ## Supported Hardware 8 | 9 | * Raspberry Pi Pico 10 | * SparkFun Pro Micro - RP2040 11 | * Adafruit KB2040 - RP2040 Kee Boar 12 | * ...and many more RP2040 based development boards 13 | -------------------------------------------------------------------------------- /software/QMK/rules.mk: -------------------------------------------------------------------------------- 1 | # Build Options 2 | # change yes to no to disable 3 | # 4 | BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite 5 | MOUSEKEY_ENABLE = no # Mouse keys 6 | EXTRAKEY_ENABLE = no # Audio control and System control 7 | CONSOLE_ENABLE = no # Console for debug 8 | COMMAND_ENABLE = no # Commands for debug and configuration 9 | NKRO_ENABLE = no # Enable N-Key Rollover 10 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality 11 | RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow 12 | WS2812_DRIVER = vendor 13 | AUDIO_ENABLE = no # Audio output 14 | ENCODER_ENABLE = no # Enable rotary encoders -------------------------------------------------------------------------------- /software/leafcutterlabs_morph_vial.uf2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeafCutterLabs/morph/d61198118b1386a16fa40c31f6ede41da509ddde/software/leafcutterlabs_morph_vial.uf2 --------------------------------------------------------------------------------