# -*- coding: utf-8 -*- """SV2A geometry transfer. Run: abaqus cae noGUI=sv2a_abaqus.py Or use File > Run Script in Abaqus/CAE (Python 3 releases). Creates a unique output folder containing model.cae and import_report.json. Native solids/shells/wires where supported; otherwise orphan surface meshes. Surface meshes are not solid volume meshes or validated analysis meshes. Complete sections, materials, mesh, interactions, steps, BCs and loads in CAE. No solver job is submitted. Existing models are not cleared or overwritten. """ from abaqus import mdb, session from abaqusConstants import THREE_D, DEFORMABLE_BODY, ON, OFF, COUNTERCLOCKWISE, IMPRINT, TRI3 import part import sketch import assembly import mesh import json import math import os import tempfile DATA = json.loads('{"shapes": [{"id": "/ArbitraryGeometry/assembly/concavePlate", "type": "Polygon", "parameters": {}, "transform": [[0.9063077870366499, -0.42261826174069944, 0.0, 40.0], [0.42261826174069944, 0.9063077870366499, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence", "file": "advanced.sysml", "line": 22, "mesh": {"vertices": [[0.0, 0.0, 0.0], [80.0, 0.0, 0.0], [80.0, 30.0, 0.0], [30.0, 30.0, 0.0], [30.0, 70.0, 0.0], [0.0, 70.0, 0.0]], "faces": [[0, 1, 2], [0, 2, 3], [5, 0, 3], [3, 4, 5]], "edges": []}}, {"id": "/ArbitraryGeometry/assembly/tetra", "type": "Polyhedron", "parameters": {}, "transform": [[0.9063077870366499, -0.42261826174069944, 0.0, 49.67379050591901], [0.42261826174069944, 0.9063077870366499, 0.0, 26.578520975546986], [0.0, 0.0, 1.0, 20.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 20.0], [0.0, 1.0, 0.0, 20.0], [0.0, 0.0, 1.0, 20.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence", "file": "advanced.sysml", "line": 38, "mesh": {"vertices": [[0.0, 0.0, 0.0], [45.0, 0.0, 0.0], [0.0, 45.0, 0.0], [0.0, 0.0, 60.0]], "faces": [[0, 2, 1], [0, 1, 3], [1, 2, 3], [2, 0, 3]], "edges": []}}, {"id": "/ArbitraryGeometry/path", "type": "Path", "parameters": {}, "transform": [[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence", "file": "advanced.sysml", "line": 57, "mesh": {"vertices": [[0.0, 0.0, 0.0], [-25.0, 30.0, 10.0], [-40.0, 65.0, 45.0], [-50.0, 80.0, 60.0]], "faces": [], "edges": [[0, 1], [1, 2], [2, 3]]}}, {"id": "/ArbitraryGeometry/curve", "type": "Parabola", "parameters": {"focalDistance": 15.0, "clipExtent": 100.0}, "transform": [[1.0, 0.0, 0.0, -100.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, -100.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence", "file": "advanced.sysml", "line": 73, "clipped": true, "mesh": {"vertices": [[-77.45966692414834, 100, 0], [-75.84592386322858, 95.8767361111111, 0], [-74.23218080230882, 91.84027777777777, 0], [-72.61843774138907, 87.89062500000001, 0], [-71.00469468046931, 84.02777777777779, 0], [-69.39095161954955, 80.25173611111111, 0], [-67.7772085586298, 76.5625, 0], [-66.16346549771004, 72.96006944444443, 0], [-64.54972243679028, 69.44444444444443, 0], [-62.935979375870524, 66.015625, 0], [-61.32223631495077, 62.673611111111114, 0], [-59.70849325403101, 59.418402777777786, 0], [-58.09475019311125, 56.25, 0], [-56.48100713219149, 53.16840277777778, 0], [-54.867264071271734, 50.1736111111111, 0], [-53.253521010351974, 47.265624999999986, 0], [-51.63977794943223, 44.44444444444445, 0], [-50.02603488851247, 41.71006944444445, 0], [-48.41229182759271, 39.0625, 0], [-46.79854876667295, 36.50173611111111, 0], [-45.1848057057532, 34.02777777777778, 0], [-43.57106264483344, 31.640625, 0], [-41.95731958391368, 29.340277777777775, 0], [-40.34357652299392, 27.126736111111104, 0], [-38.72983346207417, 25, 0], [-37.116090401154416, 22.96006944444445, 0], [-35.50234734023466, 21.006944444444446, 0], [-33.8886042793149, 19.140625, 0], [-32.27486121839514, 17.361111111111107, 0], [-30.661118157475386, 15.668402777777779, 0], [-29.04737509655562, 14.062499999999993, 0], [-27.433632035635867, 12.543402777777775, 0], [-25.819888974716115, 11.111111111111112, 0], [-24.206145913796355, 9.765625, 0], [-22.592402852876603, 8.506944444444448, 0], [-20.978659791956837, 7.335069444444441, 0], [-19.364916731037084, 6.25, 0], [-17.751173670117332, 5.251736111111114, 0], [-16.137430609197565, 4.340277777777775, 0], [-14.523687548277813, 3.515625, 0], [-12.90994448735806, 2.77777777777778, 0], [-11.296201426438301, 2.126736111111112, 0], [-9.682458365518542, 1.5625, 0], [-8.068715304598783, 1.0850694444444438, 0], [-6.454972243679023, 0.6944444444444434, 0], [-4.841229182759278, 0.3906250000000011, 0], [-3.2274861218395046, 0.1736111111111101, 0], [-1.6137430609197594, 0.0434027777777779, 0], [0, 0, 0], [1.6137430609197594, 0.0434027777777779, 0], [3.2274861218395046, 0.1736111111111101, 0], [4.841229182759278, 0.3906250000000011, 0], [6.454972243679023, 0.6944444444444434, 0], [8.068715304598797, 1.0850694444444475, 0], [9.682458365518542, 1.5625, 0], [11.296201426438301, 2.126736111111112, 0], [12.90994448735806, 2.77777777777778, 0], [14.523687548277806, 3.515624999999997, 0], [16.137430609197565, 4.340277777777775, 0], [17.751173670117325, 5.25173611111111, 0], [19.3649167310371, 6.25000000000001, 0], [20.978659791956844, 7.3350694444444455, 0], [22.592402852876603, 8.506944444444448, 0], [24.206145913796362, 9.765625000000005, 0], [25.819888974716108, 11.111111111111107, 0], [27.433632035635867, 12.543402777777775, 0], [29.047375096555626, 14.0625, 0], [30.66111815747537, 15.668402777777766, 0], [32.27486121839513, 17.3611111111111, 0], [33.888604279314904, 19.140625000000007, 0], [35.502347340234664, 21.006944444444457, 0], [37.11609040115441, 22.960069444444443, 0], [38.72983346207417, 25, 0], [40.34357652299393, 27.12673611111111, 0], [41.95731958391367, 29.340277777777764, 0], [43.57106264483343, 31.64062499999999, 0], [45.184805705753206, 34.02777777777779, 0], [46.798548766672965, 36.50173611111113, 0], [48.41229182759271, 39.0625, 0], [50.02603488851247, 41.71006944444445, 0], [51.639777949432215, 44.44444444444443, 0], [53.25352101035199, 47.265625000000014, 0], [54.867264071271734, 50.1736111111111, 0], [56.48100713219148, 53.16840277777774, 0], [58.09475019311125, 56.25, 0], [59.708493254031026, 59.418402777777814, 0], [61.32223631495077, 62.673611111111114, 0], [62.93597937587052, 66.01562499999999, 0], [64.54972243679029, 69.44444444444447, 0], [66.16346549771004, 72.96006944444443, 0], [67.77720855862978, 76.56249999999997, 0], [69.39095161954955, 80.25173611111111, 0], [71.00469468046933, 84.02777777777783, 0], [72.61843774138907, 87.89062500000001, 0], [74.23218080230882, 91.84027777777777, 0], [75.84592386322859, 95.87673611111114, 0], [77.45966692414834, 100, 0]], "faces": [], "edges": [[0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6], [6, 7], [7, 8], [8, 9], [9, 10], [10, 11], [11, 12], [12, 13], [13, 14], [14, 15], [15, 16], [16, 17], [17, 18], [18, 19], [19, 20], [20, 21], [21, 22], [22, 23], [23, 24], [24, 25], [25, 26], [26, 27], [27, 28], [28, 29], [29, 30], [30, 31], [31, 32], [32, 33], [33, 34], [34, 35], [35, 36], [36, 37], [37, 38], [38, 39], [39, 40], [40, 41], [41, 42], [42, 43], [43, 44], [44, 45], [45, 46], [46, 47], [47, 48], [48, 49], [49, 50], [50, 51], [51, 52], [52, 53], [53, 54], [54, 55], [55, 56], [56, 57], [57, 58], [58, 59], [59, 60], [60, 61], [61, 62], [62, 63], [63, 64], [64, 65], [65, 66], [66, 67], [67, 68], [68, 69], [69, 70], [70, 71], [71, 72], [72, 73], [73, 74], [74, 75], [75, 76], [76, 77], [77, 78], [78, 79], [79, 80], [80, 81], [81, 82], [82, 83], [83, 84], [84, 85], [85, 86], [86, 87], [87, 88], [88, 89], [89, 90], [90, 91], [91, 92], [92, 93], [93, 94], [94, 95], [95, 96]]}}, {"id": "/ArbitraryGeometry/surface", "type": "Hyperboloid", "parameters": {"transverseAxis": 15.0, "conjugateAxis": 25.0, "clipExtent": 100.0, "sheetCount": 1.0}, "transform": [[1.0, 0.0, 0.0, 160.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 160.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence", "file": "advanced.sysml", "line": 89, "clipped": true, "mesh": {"vertices": [[61.846584384264894, 0, -99.99999999999999], [61.31747828130117, 8.0725991614942, -99.99999999999999], [59.73921312452766, 16.00707391318791, -99.99999999999999], [57.1387934683545, 23.667663192227653, -99.99999999999999], [53.56071321407136, 30.923292192132443, -99.99999999999999], [49.0661943068603, 37.64981508907353, -99.99999999999999], [43.73213921133975, 43.73213921133974, -99.99999999999999], [37.64981508907353, 49.0661943068603, -99.99999999999999], [30.923292192132454, 53.560713214071356, -99.99999999999999], [23.667663192227657, 57.1387934683545, -99.99999999999999], [16.00707391318791, 59.73921312452766, -99.99999999999999], [8.072599161494209, 61.31747828130117, -99.99999999999999], [3.787011080219334e-15, 61.846584384264894, -99.99999999999999], [-8.072599161494187, 61.31747828130118, -99.99999999999999], [-16.007073913187917, 59.73921312452766, -99.99999999999999], [-23.66766319222765, 57.1387934683545, -99.99999999999999], [-30.923292192132433, 53.56071321407136, -99.99999999999999], [-37.64981508907353, 49.0661943068603, -99.99999999999999], [-43.73213921133974, 43.73213921133975, -99.99999999999999], [-49.06619430686029, 37.64981508907354, -99.99999999999999], [-53.56071321407136, 30.923292192132443, -99.99999999999999], [-57.1387934683545, 23.66766319222766, -99.99999999999999], [-59.73921312452765, 16.007073913187927, -99.99999999999999], [-61.31747828130117, 8.0725991614942, -99.99999999999999], [-61.846584384264894, 7.574022160438668e-15, -99.99999999999999], [-61.31747828130117, -8.072599161494212, -99.99999999999999], [-59.739213124527666, -16.007073913187888, -99.99999999999999], [-57.13879346835451, -23.667663192227643, -99.99999999999999], [-53.560713214071356, -30.923292192132454, -99.99999999999999], [-49.06619430686031, -37.649815089073506, -99.99999999999999], [-43.73213921133976, -43.73213921133974, -99.99999999999999], [-37.64981508907354, -49.06619430686028, -99.99999999999999], [-30.923292192132475, -53.56071321407135, -99.99999999999999], [-23.667663192227685, -57.138793468354486, -99.99999999999999], [-16.007073913187902, -59.73921312452766, -99.99999999999999], [-8.072599161494203, -61.31747828130117, -99.99999999999999], [-1.1361033240658002e-14, -61.846584384264894, -99.99999999999999], [8.07259916149418, -61.31747828130118, -99.99999999999999], [16.007073913187885, -59.739213124527666, -99.99999999999999], [23.667663192227668, -57.13879346835449, -99.99999999999999], [30.923292192132454, -53.560713214071356, -99.99999999999999], [37.64981508907352, -49.0661943068603, -99.99999999999999], [43.732139211339735, -43.73213921133976, -99.99999999999999], [49.06619430686028, -37.64981508907354, -99.99999999999999], [53.56071321407135, -30.923292192132475, -99.99999999999999], [57.138793468354486, -23.66766319222769, -99.99999999999999], [59.73921312452766, -16.007073913187906, -99.99999999999999], [61.31747828130117, -8.072599161494207, -99.99999999999999], [50.54802225417111, 0, -80.45189304119329], [50.11557691650696, 6.597840869091383, -80.45189304119329], [48.825640163138445, 13.082790851645534, -80.45189304119329], [46.70028316955372, 19.343890655493144, -80.45189304119329], [43.775871383173325, 25.27401112708555, -80.45189304119329], [40.10244230046234, 30.771686261013816, -80.45189304119329], [35.742849311492904, 35.742849311492904, -80.45189304119329], [30.771686261013816, 40.10244230046234, -80.45189304119329], [25.27401112708556, 43.775871383173325, -80.45189304119329], [19.343890655493144, 46.70028316955372, -80.45189304119329], [13.082790851645534, 48.825640163138445, -80.45189304119329], [6.59784086909139, 50.11557691650696, -80.45189304119329], [3.0951736828399914e-15, 50.54802225417111, -80.45189304119329], [-6.597840869091373, 50.11557691650696, -80.45189304119329], [-13.08279085164554, 48.825640163138445, -80.45189304119329], [-19.34389065549314, 46.70028316955372, -80.45189304119329], [-25.274011127085544, 43.775871383173325, -80.45189304119329], [-30.771686261013816, 40.10244230046234, -80.45189304119329], [-35.742849311492904, 35.742849311492904, -80.45189304119329], [-40.102442300462336, 30.77168626101383, -80.45189304119329], [-43.775871383173325, 25.27401112708555, -80.45189304119329], [-46.70028316955372, 19.343890655493148, -80.45189304119329], [-48.82564016313844, 13.082790851645548, -80.45189304119329], [-50.11557691650696, 6.597840869091383, -80.45189304119329], [-50.54802225417111, 6.190347365679983e-15, -80.45189304119329], [-50.11557691650696, -6.597840869091392, -80.45189304119329], [-48.825640163138445, -13.082790851645514, -80.45189304119329], [-46.70028316955373, -19.343890655493134, -80.45189304119329], [-43.775871383173325, -25.27401112708556, -80.45189304119329], [-40.10244230046235, -30.7716862610138, -80.45189304119329], [-35.74284931149291, -35.742849311492904, -80.45189304119329], [-30.77168626101383, -40.10244230046233, -80.45189304119329], [-25.274011127085576, -43.77587138317332, -80.45189304119329], [-19.34389065549317, -46.700283169553714, -80.45189304119329], [-13.082790851645528, -48.825640163138445, -80.45189304119329], [-6.597840869091385, -50.11557691650696, -80.45189304119329], [-9.285521048519973e-15, -50.54802225417111, -80.45189304119329], [6.5978408690913675, -50.11557691650696, -80.45189304119329], [13.082790851645512, -48.825640163138445, -80.45189304119329], [19.343890655493155, -46.700283169553714, -80.45189304119329], [25.27401112708556, -43.775871383173325, -80.45189304119329], [30.771686261013812, -40.10244230046234, -80.45189304119329], [35.7428493114929, -35.74284931149291, -80.45189304119329], [40.10244230046233, -30.77168626101383, -80.45189304119329], [43.77587138317331, -25.274011127085576, -80.45189304119329], [46.700283169553714, -19.343890655493173, -80.45189304119329], [48.825640163138445, -13.082790851645532, -80.45189304119329], [50.11557691650696, -6.597840869091389, -80.45189304119329], [41.47553855295002, 0, -64.44679757273617], [41.12070957103366, 5.413644117592514, -64.44679757273617], [40.06229384754236, 10.734659283387309, -64.44679757273617], [38.318401168953315, 15.872001452633523, -64.44679757273617], [35.9188700224956, 20.737769276475007, -64.44679757273617], [32.904757051360804, 25.248708118400142, -64.44679757273617], [29.327634564155048, 29.327634564155044, -64.44679757273617], [25.248708118400142, 32.904757051360804, -64.44679757273617], [20.737769276475014, 35.91887002249559, -64.44679757273617], [15.872001452633524, 38.318401168953315, -64.44679757273617], [10.734659283387309, 40.06229384754236, -64.44679757273617], [5.413644117592519, 41.12070957103366, -64.44679757273617], [2.5396442765891445e-15, 41.47553855295002, -64.44679757273617], [-5.413644117592506, 41.120709571033665, -64.44679757273617], [-10.734659283387314, 40.06229384754236, -64.44679757273617], [-15.872001452633521, 38.318401168953315, -64.44679757273617], [-20.737769276475, 35.9188700224956, -64.44679757273617], [-25.248708118400142, 32.904757051360804, -64.44679757273617], [-29.327634564155044, 29.327634564155048, -64.44679757273617], [-32.9047570513608, 25.24870811840015, -64.44679757273617], [-35.9188700224956, 20.737769276475007, -64.44679757273617], [-38.318401168953315, 15.872001452633528, -64.44679757273617], [-40.06229384754235, 10.734659283387321, -64.44679757273617], [-41.12070957103366, 5.413644117592514, -64.44679757273617], [-41.47553855295002, 5.079288553178289e-15, -64.44679757273617], [-41.12070957103366, -5.413644117592522, -64.44679757273617], [-40.062293847542364, -10.734659283387293, -64.44679757273617], [-38.31840116895332, -15.872001452633516, -64.44679757273617], [-35.91887002249559, -20.737769276475014, -64.44679757273617], [-32.90475705136081, -25.248708118400128, -64.44679757273617], [-29.32763456415505, -29.327634564155044, -64.44679757273617], [-25.24870811840015, -32.90475705136079, -64.44679757273617], [-20.737769276475028, -35.91887002249559, -64.44679757273617], [-15.872001452633546, -38.31840116895331, -64.44679757273617], [-10.734659283387304, -40.06229384754236, -64.44679757273617], [-5.413644117592517, -41.12070957103366, -64.44679757273617], [-7.618932829767432e-15, -41.47553855295002, -64.44679757273617], [5.413644117592502, -41.120709571033665, -64.44679757273617], [10.734659283387291, -40.062293847542364, -64.44679757273617], [15.872001452633532, -38.31840116895331, -64.44679757273617], [20.737769276475014, -35.91887002249559, -64.44679757273617], [25.248708118400135, -32.904757051360804, -64.44679757273617], [29.327634564155037, -29.32763456415505, -64.44679757273617], [32.90475705136079, -25.24870811840015, -64.44679757273617], [35.91887002249558, -20.737769276475028, -64.44679757273617], [38.31840116895331, -15.872001452633548, -64.44679757273617], [40.06229384754236, -10.734659283387307, -64.44679757273617], [41.12070957103366, -5.4136441175925185, -64.44679757273617], [34.229591233990256, 0, -51.279867070758065], [33.93675233586566, 4.467858205021605, -51.279867070758065], [33.06324619622909, 8.859270117430972, -51.279867070758065], [31.624018747311357, 13.09909746187738, -51.279867070758065], [29.643695569792694, 17.114795616995124, -51.279867070758065], [27.15616054228975, 20.837654873988285, -51.279867070758065], [24.203976078798114, 24.20397607879811, -51.279867070758065], [20.837654873988285, 27.15616054228975, -51.279867070758065], [17.11479561699513, 29.64369556979269, -51.279867070758065], [13.099097461877381, 31.624018747311357, -51.279867070758065], [8.859270117430972, 33.06324619622909, -51.279867070758065], [4.467858205021609, 33.93675233586566, -51.279867070758065], [2.095957967041423e-15, 34.229591233990256, -51.279867070758065], [-4.467858205021598, 33.93675233586567, -51.279867070758065], [-8.859270117430976, 33.06324619622909, -51.279867070758065], [-13.099097461877378, 31.624018747311357, -51.279867070758065], [-17.11479561699512, 29.643695569792694, -51.279867070758065], [-20.837654873988285, 27.15616054228975, -51.279867070758065], [-24.20397607879811, 24.203976078798114, -51.279867070758065], [-27.156160542289747, 20.837654873988292, -51.279867070758065], [-29.643695569792694, 17.114795616995124, -51.279867070758065], [-31.624018747311357, 13.099097461877385, -51.279867070758065], [-33.06324619622908, 8.859270117430983, -51.279867070758065], [-33.93675233586566, 4.467858205021605, -51.279867070758065], [-34.229591233990256, 4.191915934082846e-15, -51.279867070758065], [-33.93675233586566, -4.467858205021611, -51.279867070758065], [-33.06324619622909, -8.85927011743096, -51.279867070758065], [-31.62401874731136, -13.099097461877374, -51.279867070758065], [-29.64369556979269, -17.11479561699513, -51.279867070758065], [-27.156160542289758, -20.837654873988274, -51.279867070758065], [-24.203976078798117, -24.20397607879811, -51.279867070758065], [-20.837654873988292, -27.156160542289744, -51.279867070758065], [-17.114795616995142, -29.643695569792687, -51.279867070758065], [-13.099097461877399, -31.62401874731135, -51.279867070758065], [-8.859270117430968, -33.06324619622909, -51.279867070758065], [-4.4678582050216065, -33.93675233586566, -51.279867070758065], [-6.28787390112427e-15, -34.229591233990256, -51.279867070758065], [4.467858205021594, -33.93675233586567, -51.279867070758065], [8.859270117430958, -33.06324619622909, -51.279867070758065], [13.099097461877388, -31.624018747311354, -51.279867070758065], [17.11479561699513, -29.64369556979269, -51.279867070758065], [20.83765487398828, -27.15616054228975, -51.279867070758065], [24.203976078798107, -24.203976078798117, -51.279867070758065], [27.156160542289744, -20.837654873988292, -51.279867070758065], [29.643695569792683, -17.114795616995142, -51.279867070758065], [31.62401874731135, -13.0990974618774, -51.279867070758065], [33.06324619622909, -8.85927011743097, -51.279867070758065], [33.93675233586566, -4.467858205021608, -51.279867070758065], [28.49107687238676, 0, -40.371244625773336], [28.247331760134067, 3.71883177640142, -40.371244625773336], [27.520266969825546, 7.374033310053655, -40.371244625773336], [26.322322781603813, 10.903063089302591, -40.371244625773336], [24.673996352662225, 14.245538436193378, -40.371244625773336], [22.603491005202393, 17.344268670831475, -40.371244625773336], [20.14623365977189, 20.146233659771887, -40.371244625773336], [17.344268670831475, 22.603491005202393, -40.371244625773336], [14.245538436193383, 24.673996352662222, -40.371244625773336], [10.903063089302593, 26.322322781603813, -40.371244625773336], [7.374033310053655, 27.520266969825546, -40.371244625773336], [3.718831776401424, 28.247331760134067, -40.371244625773336], [1.7445753048014815e-15, 28.49107687238676, -40.371244625773336], [-3.7188317764014145, 28.24733176013407, -40.371244625773336], [-7.374033310053657, 27.520266969825546, -40.371244625773336], [-10.903063089302591, 26.322322781603813, -40.371244625773336], [-14.245538436193373, 24.673996352662225, -40.371244625773336], [-17.344268670831475, 22.603491005202393, -40.371244625773336], [-20.146233659771887, 20.14623365977189, -40.371244625773336], [-22.60349100520239, 17.344268670831482, -40.371244625773336], [-24.673996352662225, 14.245538436193378, -40.371244625773336], [-26.322322781603813, 10.903063089302595, -40.371244625773336], [-27.520266969825542, 7.374033310053663, -40.371244625773336], [-28.247331760134067, 3.71883177640142, -40.371244625773336], [-28.49107687238676, 3.489150609602963e-15, -40.371244625773336], [-28.247331760134067, -3.7188317764014256, -40.371244625773336], [-27.52026696982555, -7.374033310053643, -40.371244625773336], [-26.322322781603816, -10.903063089302588, -40.371244625773336], [-24.673996352662222, -14.245538436193383, -40.371244625773336], [-22.6034910052024, -17.344268670831465, -40.371244625773336], [-20.146233659771895, -20.146233659771887, -40.371244625773336], [-17.344268670831482, -22.603491005202386, -40.371244625773336], [-14.245538436193392, -24.673996352662222, -40.371244625773336], [-10.903063089302607, -26.322322781603805, -40.371244625773336], [-7.374033310053651, -27.520266969825546, -40.371244625773336], [-3.7188317764014216, -28.247331760134067, -40.371244625773336], [-5.233725914404444e-15, -28.49107687238676, -40.371244625773336], [3.7188317764014114, -28.24733176013407, -40.371244625773336], [7.374033310053641, -27.52026696982555, -40.371244625773336], [10.903063089302599, -26.32232278160381, -40.371244625773336], [14.245538436193383, -24.673996352662222, -40.371244625773336], [17.34426867083147, -22.603491005202393, -40.371244625773336], [20.146233659771884, -20.146233659771895, -40.371244625773336], [22.603491005202386, -17.344268670831482, -40.371244625773336], [24.67399635266222, -14.245538436193392, -40.371244625773336], [26.322322781603805, -10.90306308930261, -40.371244625773336], [27.520266969825546, -7.374033310053653, -40.371244625773336], [28.247331760134067, -3.7188317764014234, -40.371244625773336], [24.007277706603613, 0, -31.240526692191327], [23.80189211778619, 3.133578544612302, -31.240526692191327], [23.189249555702222, 6.213540691534181, -31.240526692191327], [22.17983250444558, 9.187187434504972, -31.240526692191327], [20.790912369626547, 12.003638853301805, -31.240526692191327], [19.04625395983328, 14.614704683281218, -31.240526692191327], [16.97570886416804, 16.97570886416804, -31.240526692191327], [14.614704683281218, 19.04625395983328, -31.240526692191327], [12.00363885330181, 20.790912369626547, -31.240526692191327], [9.187187434504972, 22.17983250444558, -31.240526692191327], [6.213540691534181, 23.189249555702222, -31.240526692191327], [3.1335785446123054, 23.80189211778619, -31.240526692191327], [1.4700217899816862e-15, 24.007277706603613, -31.240526692191327], [-3.1335785446122975, 23.801892117786192, -31.240526692191327], [-6.213540691534184, 23.189249555702222, -31.240526692191327], [-9.18718743450497, 22.17983250444558, -31.240526692191327], [-12.003638853301801, 20.790912369626547, -31.240526692191327], [-14.614704683281218, 19.04625395983328, -31.240526692191327], [-16.97570886416804, 16.97570886416804, -31.240526692191327], [-19.046253959833276, 14.614704683281223, -31.240526692191327], [-20.790912369626547, 12.003638853301805, -31.240526692191327], [-22.17983250444558, 9.187187434504974, -31.240526692191327], [-23.189249555702222, 6.213540691534188, -31.240526692191327], [-23.80189211778619, 3.133578544612302, -31.240526692191327], [-24.007277706603613, 2.9400435799633725e-15, -31.240526692191327], [-23.80189211778619, -3.133578544612307, -31.240526692191327], [-23.189249555702226, -6.213540691534172, -31.240526692191327], [-22.179832504445585, -9.187187434504967, -31.240526692191327], [-20.790912369626547, -12.00363885330181, -31.240526692191327], [-19.046253959833287, -14.614704683281209, -31.240526692191327], [-16.975708864168045, -16.97570886416804, -31.240526692191327], [-14.614704683281223, -19.046253959833276, -31.240526692191327], [-12.003638853301817, -20.790912369626543, -31.240526692191327], [-9.187187434504985, -22.179832504445578, -31.240526692191327], [-6.213540691534178, -23.189249555702222, -31.240526692191327], [-3.1335785446123032, -23.80189211778619, -31.240526692191327], [-4.4100653699450585e-15, -24.007277706603613, -31.240526692191327], [3.133578544612295, -23.801892117786192, -31.240526692191327], [6.21354069153417, -23.189249555702226, -31.240526692191327], [9.187187434504978, -22.179832504445578, -31.240526692191327], [12.00363885330181, -20.790912369626547, -31.240526692191327], [14.614704683281214, -19.04625395983328, -31.240526692191327], [16.975708864168038, -16.975708864168045, -31.240526692191327], [19.046253959833276, -14.614704683281223, -31.240526692191327], [20.79091236962654, -12.003638853301817, -31.240526692191327], [22.179832504445578, -9.187187434504986, -31.240526692191327], [23.189249555702222, -6.21354069153418, -31.240526692191327], [23.80189211778619, -3.1335785446123046, -31.240526692191327], [20.580732230587063, 0, -23.48560665286561], [20.4046612133259, 2.686324611159018, -23.48560665286561], [19.87946078546387, 5.3266854634312155, -23.48560665286561], [19.014117271934747, 7.875905250587888, -23.48560665286561], [17.823436940173572, 10.29036611529353, -23.48560665286561], [16.32779266077573, 12.528755962738016, -23.48560665286561], [14.552775322032653, 14.552775322032652, -23.48560665286561], [12.528755962738016, 16.32779266077573, -23.48560665286561], [10.290366115293534, 17.823436940173572, -23.48560665286561], [7.875905250587889, 19.014117271934747, -23.48560665286561], [5.3266854634312155, 19.87946078546387, -23.48560665286561], [2.6863246111590207, 20.4046612133259, -23.48560665286561], [1.2602063925148606e-15, 20.580732230587063, -23.48560665286561], [-2.686324611159014, 20.404661213325905, -23.48560665286561], [-5.326685463431217, 19.87946078546387, -23.48560665286561], [-7.875905250587887, 19.014117271934747, -23.48560665286561], [-10.290366115293526, 17.823436940173572, -23.48560665286561], [-12.528755962738016, 16.32779266077573, -23.48560665286561], [-14.552775322032652, 14.552775322032653, -23.48560665286561], [-16.327792660775728, 12.528755962738021, -23.48560665286561], [-17.823436940173572, 10.29036611529353, -23.48560665286561], [-19.014117271934747, 7.87590525058789, -23.48560665286561], [-19.879460785463866, 5.326685463431221, -23.48560665286561], [-20.4046612133259, 2.686324611159018, -23.48560665286561], [-20.580732230587063, 2.5204127850297213e-15, -23.48560665286561], [-20.4046612133259, -2.686324611159022, -23.48560665286561], [-19.87946078546387, -5.3266854634312075, -23.48560665286561], [-19.01411727193475, -7.875905250587884, -23.48560665286561], [-17.823436940173572, -10.290366115293534, -23.48560665286561], [-16.327792660775735, -12.528755962738009, -23.48560665286561], [-14.552775322032657, -14.552775322032652, -23.48560665286561], [-12.528755962738021, -16.327792660775724, -23.48560665286561], [-10.29036611529354, -17.82343694017357, -23.48560665286561], [-7.875905250587899, -19.014117271934744, -23.48560665286561], [-5.326685463431213, -19.87946078546387, -23.48560665286561], [-2.686324611159019, -20.4046612133259, -23.48560665286561], [-3.780619177544582e-15, -20.580732230587063, -23.48560665286561], [2.6863246111590113, -20.404661213325905, -23.48560665286561], [5.326685463431207, -19.87946078546387, -23.48560665286561], [7.875905250587892, -19.014117271934744, -23.48560665286561], [10.290366115293534, -17.823436940173572, -23.48560665286561], [12.528755962738014, -16.32779266077573, -23.48560665286561], [14.55277532203265, -14.552775322032657, -23.48560665286561], [16.327792660775724, -12.528755962738021, -23.48560665286561], [17.82343694017357, -10.29036611529354, -23.48560665286561], [19.014117271934744, -7.8759052505879, -23.48560665286561], [19.87946078546387, -5.326685463431215, -23.48560665286561], [20.4046612133259, -2.68632461115902, -23.48560665286561], [18.060539209638808, 0, -16.764966492899937], [17.906028793036615, 2.3573734124750936, -16.764966492899937], [17.44514125929648, 4.674411512275351, -16.764966492899937], [16.685762521902866, 6.911469135108865, -16.764966492899937], [15.640885761592136, 9.030269604819402, -16.764966492899937], [14.328389109427773, 10.99455965792775, -16.764966492899937], [12.770729747021132, 12.770729747021129, -16.764966492899937], [10.99455965792775, 14.328389109427773, -16.764966492899937], [9.030269604819406, 15.640885761592134, -16.764966492899937], [6.911469135108866, 16.685762521902866, -16.764966492899937], [4.674411512275351, 17.44514125929648, -16.764966492899937], [2.357373412475096, 17.906028793036615, -16.764966492899937], [1.1058890766979717e-15, 18.060539209638808, -16.764966492899937], [-2.35737341247509, 17.90602879303662, -16.764966492899937], [-4.674411512275353, 17.44514125929648, -16.764966492899937], [-6.911469135108864, 16.685762521902866, -16.764966492899937], [-9.0302696048194, 15.640885761592136, -16.764966492899937], [-10.99455965792775, 14.328389109427773, -16.764966492899937], [-12.770729747021129, 12.770729747021132, -16.764966492899937], [-14.328389109427771, 10.994559657927756, -16.764966492899937], [-15.640885761592136, 9.030269604819402, -16.764966492899937], [-16.685762521902866, 6.911469135108867, -16.764966492899937], [-17.44514125929648, 4.674411512275356, -16.764966492899937], [-17.906028793036615, 2.3573734124750936, -16.764966492899937], [-18.060539209638808, 2.2117781533959434e-15, -16.764966492899937], [-17.906028793036615, -2.3573734124750967, -16.764966492899937], [-17.445141259296484, -4.674411512275344, -16.764966492899937], [-16.685762521902866, -6.911469135108862, -16.764966492899937], [-15.640885761592134, -9.030269604819406, -16.764966492899937], [-14.328389109427777, -10.994559657927745, -16.764966492899937], [-12.770729747021134, -12.770729747021129, -16.764966492899937], [-10.994559657927756, -14.328389109427768, -16.764966492899937], [-9.030269604819413, -15.640885761592132, -16.764966492899937], [-6.911469135108875, -16.685762521902863, -16.764966492899937], [-4.674411512275349, -17.44514125929648, -16.764966492899937], [-2.3573734124750945, -17.906028793036615, -16.764966492899937], [-3.317667230093915e-15, -18.060539209638808, -16.764966492899937], [2.357373412475088, -17.90602879303662, -16.764966492899937], [4.674411512275343, -17.445141259296484, -16.764966492899937], [6.911469135108869, -16.685762521902863, -16.764966492899937], [9.030269604819406, -15.640885761592134, -16.764966492899937], [10.994559657927748, -14.328389109427773, -16.764966492899937], [12.770729747021127, -12.770729747021134, -16.764966492899937], [14.328389109427768, -10.994559657927756, -16.764966492899937], [15.64088576159213, -9.030269604819413, -16.764966492899937], [16.685762521902863, -6.9114691351088755, -16.764966492899937], [17.44514125929648, -4.67441151227535, -16.764966492899937], [17.906028793036615, -2.3573734124750954, -16.764966492899937], [16.3357121586236, 0, -10.782636727809068], [16.195957876549045, 2.1322383052679377, -10.782636727809068], [15.779086264838881, 4.227993421964598, -10.782636727809068], [15.092230112348116, 6.251406398990209, -10.782636727809068], [14.147141718278368, 8.167856079311798, -10.782636727809068], [12.959991807080177, 9.944551477558836, -10.782636727809068], [11.551092842874283, 11.551092842874281, -10.782636727809068], [9.944551477558836, 12.959991807080177, -10.782636727809068], [8.167856079311802, 14.147141718278366, -10.782636727809068], [6.25140639899021, 15.092230112348116, -10.782636727809068], [4.227993421964598, 15.779086264838881, -10.782636727809068], [2.13223830526794, 16.195957876549045, -10.782636727809068], [1.0002738803425446e-15, 16.3357121586236, -10.782636727809068], [-2.1322383052679346, 16.195957876549045, -10.782636727809068], [-4.2279934219646, 15.779086264838881, -10.782636727809068], [-6.251406398990208, 15.092230112348116, -10.782636727809068], [-8.167856079311797, 14.147141718278368, -10.782636727809068], [-9.944551477558836, 12.959991807080177, -10.782636727809068], [-11.551092842874281, 11.551092842874283, -10.782636727809068], [-12.959991807080176, 9.94455147755884, -10.782636727809068], [-14.147141718278368, 8.167856079311798, -10.782636727809068], [-15.092230112348116, 6.251406398990211, -10.782636727809068], [-15.77908626483888, 4.2279934219646025, -10.782636727809068], [-16.195957876549045, 2.1322383052679377, -10.782636727809068], [-16.3357121586236, 2.000547760685089e-15, -10.782636727809068], [-16.195957876549045, -2.132238305267941, -10.782636727809068], [-15.779086264838883, -4.227993421964592, -10.782636727809068], [-15.092230112348117, -6.2514063989902064, -10.782636727809068], [-14.147141718278366, -8.167856079311802, -10.782636727809068], [-12.959991807080181, -9.94455147755883, -10.782636727809068], [-11.551092842874285, -11.551092842874281, -10.782636727809068], [-9.94455147755884, -12.959991807080174, -10.782636727809068], [-8.167856079311807, -14.147141718278364, -10.782636727809068], [-6.251406398990219, -15.092230112348112, -10.782636727809068], [-4.227993421964596, -15.779086264838881, -10.782636727809068], [-2.1322383052679386, -16.195957876549045, -10.782636727809068], [-3.0008216410276335e-15, -16.3357121586236, -10.782636727809068], [2.132238305267933, -16.195957876549045, -10.782636727809068], [4.227993421964591, -15.779086264838883, -10.782636727809068], [6.251406398990213, -15.092230112348114, -10.782636727809068], [8.167856079311802, -14.147141718278366, -10.782636727809068], [9.944551477558834, -12.959991807080177, -10.782636727809068], [11.55109284287428, -11.551092842874285, -10.782636727809068], [12.959991807080174, -9.94455147755884, -10.782636727809068], [14.147141718278363, -8.167856079311807, -10.782636727809068], [15.092230112348112, -6.25140639899022, -10.782636727809068], [15.779086264838881, -4.227993421964597, -10.782636727809068], [16.195957876549045, -2.1322383052679394, -10.782636727809068], [15.33029162115571, 0, -5.275162238073032], [15.19913885115681, 2.0010045909324163, -5.275162238073032], [14.807924601417211, 3.9677714385306957, -5.275162238073032], [14.163342656215034, 5.866648616741644, -5.275162238073032], [13.276421991344572, 7.6651458105778545, -5.275162238073032], [12.162338065282619, 9.332490234415168, -5.275162238073032], [10.840153162886514, 10.840153162886514, -5.275162238073032], [9.332490234415168, 12.162338065282619, -5.275162238073032], [7.665145810577857, 13.27642199134457, -5.275162238073032], [5.866648616741645, 14.163342656215034, -5.275162238073032], [3.9677714385306957, 14.807924601417211, -5.275162238073032], [2.0010045909324186, 15.19913885115681, -5.275162238073032], [9.387096281921914e-16, 15.33029162115571, -5.275162238073032], [-2.0010045909324132, 15.199138851156812, -5.275162238073032], [-3.9677714385306975, 14.807924601417211, -5.275162238073032], [-5.866648616741643, 14.163342656215034, -5.275162238073032], [-7.665145810577852, 13.276421991344572, -5.275162238073032], [-9.332490234415168, 12.162338065282619, -5.275162238073032], [-10.840153162886514, 10.840153162886514, -5.275162238073032], [-12.162338065282617, 9.33249023441517, -5.275162238073032], [-13.276421991344572, 7.6651458105778545, -5.275162238073032], [-14.163342656215034, 5.866648616741646, -5.275162238073032], [-14.80792460141721, 3.9677714385307, -5.275162238073032], [-15.19913885115681, 2.0010045909324163, -5.275162238073032], [-15.33029162115571, 1.877419256384383e-15, -5.275162238073032], [-15.19913885115681, -2.0010045909324194, -5.275162238073032], [-14.807924601417213, -3.96777143853069, -5.275162238073032], [-14.163342656215036, -5.866648616741641, -5.275162238073032], [-13.27642199134457, -7.665145810577857, -5.275162238073032], [-12.162338065282622, -9.332490234415163, -5.275162238073032], [-10.840153162886516, -10.840153162886514, -5.275162238073032], [-9.33249023441517, -12.162338065282615, -5.275162238073032], [-7.6651458105778625, -13.276421991344568, -5.275162238073032], [-5.866648616741653, -14.16334265621503, -5.275162238073032], [-3.967771438530694, -14.807924601417211, -5.275162238073032], [-2.0010045909324172, -15.19913885115681, -5.275162238073032], [-2.8161288845765742e-15, -15.33029162115571, -5.275162238073032], [2.001004590932412, -15.199138851156812, -5.275162238073032], [3.967771438530689, -14.807924601417213, -5.275162238073032], [5.866648616741648, -14.163342656215033, -5.275162238073032], [7.665145810577857, -13.27642199134457, -5.275162238073032], [9.332490234415166, -12.162338065282619, -5.275162238073032], [10.840153162886512, -10.840153162886516, -5.275162238073032], [12.162338065282615, -9.33249023441517, -5.275162238073032], [13.276421991344566, -7.6651458105778625, -5.275162238073032], [14.16334265621503, -5.866648616741653, -5.275162238073032], [14.807924601417211, -3.967771438530695, -5.275162238073032], [15.19913885115681, -2.001004590932418, -5.275162238073032], [15, 0, 0], [14.871672920607155, 1.9578928833007736, 0], [14.488887394336025, 3.882285676537811, 0], [13.858192987669302, 5.740251485476347, 0], [12.99038105676658, 7.499999999999999, 0], [11.900300104368528, 9.13142143513081, 0], [10.606601717798213, 10.606601717798211, 0], [9.13142143513081, 11.900300104368528, 0], [7.500000000000002, 12.990381056766578, 0], [5.740251485476348, 13.858192987669302, 0], [3.882285676537811, 14.488887394336025, 0], [1.9578928833007756, 14.871672920607155, 0], [9.18485099360515e-16, 15, 0], [-1.9578928833007707, 14.871672920607157, 0], [-3.882285676537813, 14.488887394336025, 0], [-5.740251485476346, 13.858192987669302, 0], [-7.4999999999999964, 12.99038105676658, 0], [-9.13142143513081, 11.900300104368528, 0], [-10.606601717798211, 10.606601717798213, 0], [-11.900300104368526, 9.131421435130813, 0], [-12.99038105676658, 7.499999999999999, 0], [-13.858192987669302, 5.740251485476349, 0], [-14.488887394336023, 3.882285676537815, 0], [-14.871672920607155, 1.9578928833007736, 0], [-15, 1.83697019872103e-15, 0], [-14.871672920607155, -1.9578928833007765, 0], [-14.488887394336027, -3.8822856765378053, 0], [-13.858192987669304, -5.740251485476344, 0], [-12.990381056766578, -7.500000000000002, 0], [-11.900300104368531, -9.131421435130806, 0], [-10.606601717798215, -10.606601717798211, 0], [-9.131421435130813, -11.900300104368524, 0], [-7.500000000000007, -12.990381056766577, 0], [-5.740251485476355, -13.858192987669298, 0], [-3.8822856765378093, -14.488887394336025, 0], [-1.9578928833007745, -14.871672920607155, 0], [-2.7554552980815444e-15, -15, 0], [1.957892883300769, -14.871672920607157, 0], [3.8822856765378044, -14.488887394336027, 0], [5.7402514854763504, -13.8581929876693, 0], [7.500000000000002, -12.990381056766578, 0], [9.131421435130807, -11.900300104368528, 0], [10.60660171779821, -10.606601717798215, 0], [11.900300104368524, -9.131421435130813, 0], [12.990381056766577, -7.500000000000007, 0], [13.858192987669298, -5.740251485476356, 0], [14.488887394336025, -3.88228567653781, 0], [14.871672920607155, -1.9578928833007754, 0], [15.33029162115571, 0, 5.2751622380730385], [15.19913885115681, 2.0010045909324163, 5.2751622380730385], [14.807924601417211, 3.9677714385306957, 5.2751622380730385], [14.163342656215034, 5.866648616741644, 5.2751622380730385], [13.276421991344572, 7.6651458105778545, 5.2751622380730385], [12.162338065282619, 9.332490234415168, 5.2751622380730385], [10.840153162886514, 10.840153162886514, 5.2751622380730385], [9.332490234415168, 12.162338065282619, 5.2751622380730385], [7.665145810577857, 13.27642199134457, 5.2751622380730385], [5.866648616741645, 14.163342656215034, 5.2751622380730385], [3.9677714385306957, 14.807924601417211, 5.2751622380730385], [2.0010045909324186, 15.19913885115681, 5.2751622380730385], [9.387096281921914e-16, 15.33029162115571, 5.2751622380730385], [-2.0010045909324132, 15.199138851156812, 5.2751622380730385], [-3.9677714385306975, 14.807924601417211, 5.2751622380730385], [-5.866648616741643, 14.163342656215034, 5.2751622380730385], [-7.665145810577852, 13.276421991344572, 5.2751622380730385], [-9.332490234415168, 12.162338065282619, 5.2751622380730385], [-10.840153162886514, 10.840153162886514, 5.2751622380730385], [-12.162338065282617, 9.33249023441517, 5.2751622380730385], [-13.276421991344572, 7.6651458105778545, 5.2751622380730385], [-14.163342656215034, 5.866648616741646, 5.2751622380730385], [-14.80792460141721, 3.9677714385307, 5.2751622380730385], [-15.19913885115681, 2.0010045909324163, 5.2751622380730385], [-15.33029162115571, 1.877419256384383e-15, 5.2751622380730385], [-15.19913885115681, -2.0010045909324194, 5.2751622380730385], [-14.807924601417213, -3.96777143853069, 5.2751622380730385], [-14.163342656215036, -5.866648616741641, 5.2751622380730385], [-13.27642199134457, -7.665145810577857, 5.2751622380730385], [-12.162338065282622, -9.332490234415163, 5.2751622380730385], [-10.840153162886516, -10.840153162886514, 5.2751622380730385], [-9.33249023441517, -12.162338065282615, 5.2751622380730385], [-7.6651458105778625, -13.276421991344568, 5.2751622380730385], [-5.866648616741653, -14.16334265621503, 5.2751622380730385], [-3.967771438530694, -14.807924601417211, 5.2751622380730385], [-2.0010045909324172, -15.19913885115681, 5.2751622380730385], [-2.8161288845765742e-15, -15.33029162115571, 5.2751622380730385], [2.001004590932412, -15.199138851156812, 5.2751622380730385], [3.967771438530689, -14.807924601417213, 5.2751622380730385], [5.866648616741648, -14.163342656215033, 5.2751622380730385], [7.665145810577857, -13.27642199134457, 5.2751622380730385], [9.332490234415166, -12.162338065282619, 5.2751622380730385], [10.840153162886512, -10.840153162886516, 5.2751622380730385], [12.162338065282615, -9.33249023441517, 5.2751622380730385], [13.276421991344566, -7.6651458105778625, 5.2751622380730385], [14.16334265621503, -5.866648616741653, 5.2751622380730385], [14.807924601417211, -3.967771438530695, 5.2751622380730385], [15.19913885115681, -2.001004590932418, 5.2751622380730385], [16.3357121586236, 0, 10.782636727809068], [16.195957876549045, 2.1322383052679377, 10.782636727809068], [15.779086264838881, 4.227993421964598, 10.782636727809068], [15.092230112348116, 6.251406398990209, 10.782636727809068], [14.147141718278368, 8.167856079311798, 10.782636727809068], [12.959991807080177, 9.944551477558836, 10.782636727809068], [11.551092842874283, 11.551092842874281, 10.782636727809068], [9.944551477558836, 12.959991807080177, 10.782636727809068], [8.167856079311802, 14.147141718278366, 10.782636727809068], [6.25140639899021, 15.092230112348116, 10.782636727809068], [4.227993421964598, 15.779086264838881, 10.782636727809068], [2.13223830526794, 16.195957876549045, 10.782636727809068], [1.0002738803425446e-15, 16.3357121586236, 10.782636727809068], [-2.1322383052679346, 16.195957876549045, 10.782636727809068], [-4.2279934219646, 15.779086264838881, 10.782636727809068], [-6.251406398990208, 15.092230112348116, 10.782636727809068], [-8.167856079311797, 14.147141718278368, 10.782636727809068], [-9.944551477558836, 12.959991807080177, 10.782636727809068], [-11.551092842874281, 11.551092842874283, 10.782636727809068], [-12.959991807080176, 9.94455147755884, 10.782636727809068], [-14.147141718278368, 8.167856079311798, 10.782636727809068], [-15.092230112348116, 6.251406398990211, 10.782636727809068], [-15.77908626483888, 4.2279934219646025, 10.782636727809068], [-16.195957876549045, 2.1322383052679377, 10.782636727809068], [-16.3357121586236, 2.000547760685089e-15, 10.782636727809068], [-16.195957876549045, -2.132238305267941, 10.782636727809068], [-15.779086264838883, -4.227993421964592, 10.782636727809068], [-15.092230112348117, -6.2514063989902064, 10.782636727809068], [-14.147141718278366, -8.167856079311802, 10.782636727809068], [-12.959991807080181, -9.94455147755883, 10.782636727809068], [-11.551092842874285, -11.551092842874281, 10.782636727809068], [-9.94455147755884, -12.959991807080174, 10.782636727809068], [-8.167856079311807, -14.147141718278364, 10.782636727809068], [-6.251406398990219, -15.092230112348112, 10.782636727809068], [-4.227993421964596, -15.779086264838881, 10.782636727809068], [-2.1322383052679386, -16.195957876549045, 10.782636727809068], [-3.0008216410276335e-15, -16.3357121586236, 10.782636727809068], [2.132238305267933, -16.195957876549045, 10.782636727809068], [4.227993421964591, -15.779086264838883, 10.782636727809068], [6.251406398990213, -15.092230112348114, 10.782636727809068], [8.167856079311802, -14.147141718278366, 10.782636727809068], [9.944551477558834, -12.959991807080177, 10.782636727809068], [11.55109284287428, -11.551092842874285, 10.782636727809068], [12.959991807080174, -9.94455147755884, 10.782636727809068], [14.147141718278363, -8.167856079311807, 10.782636727809068], [15.092230112348112, -6.25140639899022, 10.782636727809068], [15.779086264838881, -4.227993421964597, 10.782636727809068], [16.195957876549045, -2.1322383052679394, 10.782636727809068], [18.060539209638808, 0, 16.764966492899937], [17.906028793036615, 2.3573734124750936, 16.764966492899937], [17.44514125929648, 4.674411512275351, 16.764966492899937], [16.685762521902866, 6.911469135108865, 16.764966492899937], [15.640885761592136, 9.030269604819402, 16.764966492899937], [14.328389109427773, 10.99455965792775, 16.764966492899937], [12.770729747021132, 12.770729747021129, 16.764966492899937], [10.99455965792775, 14.328389109427773, 16.764966492899937], [9.030269604819406, 15.640885761592134, 16.764966492899937], [6.911469135108866, 16.685762521902866, 16.764966492899937], [4.674411512275351, 17.44514125929648, 16.764966492899937], [2.357373412475096, 17.906028793036615, 16.764966492899937], [1.1058890766979717e-15, 18.060539209638808, 16.764966492899937], [-2.35737341247509, 17.90602879303662, 16.764966492899937], [-4.674411512275353, 17.44514125929648, 16.764966492899937], [-6.911469135108864, 16.685762521902866, 16.764966492899937], [-9.0302696048194, 15.640885761592136, 16.764966492899937], [-10.99455965792775, 14.328389109427773, 16.764966492899937], [-12.770729747021129, 12.770729747021132, 16.764966492899937], [-14.328389109427771, 10.994559657927756, 16.764966492899937], [-15.640885761592136, 9.030269604819402, 16.764966492899937], [-16.685762521902866, 6.911469135108867, 16.764966492899937], [-17.44514125929648, 4.674411512275356, 16.764966492899937], [-17.906028793036615, 2.3573734124750936, 16.764966492899937], [-18.060539209638808, 2.2117781533959434e-15, 16.764966492899937], [-17.906028793036615, -2.3573734124750967, 16.764966492899937], [-17.445141259296484, -4.674411512275344, 16.764966492899937], [-16.685762521902866, -6.911469135108862, 16.764966492899937], [-15.640885761592134, -9.030269604819406, 16.764966492899937], [-14.328389109427777, -10.994559657927745, 16.764966492899937], [-12.770729747021134, -12.770729747021129, 16.764966492899937], [-10.994559657927756, -14.328389109427768, 16.764966492899937], [-9.030269604819413, -15.640885761592132, 16.764966492899937], [-6.911469135108875, -16.685762521902863, 16.764966492899937], [-4.674411512275349, -17.44514125929648, 16.764966492899937], [-2.3573734124750945, -17.906028793036615, 16.764966492899937], [-3.317667230093915e-15, -18.060539209638808, 16.764966492899937], [2.357373412475088, -17.90602879303662, 16.764966492899937], [4.674411512275343, -17.445141259296484, 16.764966492899937], [6.911469135108869, -16.685762521902863, 16.764966492899937], [9.030269604819406, -15.640885761592134, 16.764966492899937], [10.994559657927748, -14.328389109427773, 16.764966492899937], [12.770729747021127, -12.770729747021134, 16.764966492899937], [14.328389109427768, -10.994559657927756, 16.764966492899937], [15.64088576159213, -9.030269604819413, 16.764966492899937], [16.685762521902863, -6.9114691351088755, 16.764966492899937], [17.44514125929648, -4.67441151227535, 16.764966492899937], [17.906028793036615, -2.3573734124750954, 16.764966492899937], [20.58073223058706, 0, 23.485606652865602], [20.404661213325898, 2.6863246111590176, 23.485606652865602], [19.879460785463866, 5.326685463431215, 23.485606652865602], [19.014117271934744, 7.875905250587887, 23.485606652865602], [17.823436940173572, 10.290366115293528, 23.485606652865602], [16.327792660775728, 12.528755962738014, 23.485606652865602], [14.552775322032652, 14.55277532203265, 23.485606652865602], [12.528755962738014, 16.327792660775728, 23.485606652865602], [10.290366115293532, 17.82343694017357, 23.485606652865602], [7.875905250587888, 19.014117271934744, 23.485606652865602], [5.326685463431215, 19.879460785463866, 23.485606652865602], [2.68632461115902, 20.404661213325898, 23.485606652865602], [1.2602063925148604e-15, 20.58073223058706, 23.485606652865602], [-2.6863246111590136, 20.4046612133259, 23.485606652865602], [-5.326685463431216, 19.879460785463866, 23.485606652865602], [-7.875905250587885, 19.014117271934744, 23.485606652865602], [-10.290366115293525, 17.823436940173572, 23.485606652865602], [-12.528755962738014, 16.327792660775728, 23.485606652865602], [-14.55277532203265, 14.552775322032652, 23.485606652865602], [-16.327792660775724, 12.528755962738018, 23.485606652865602], [-17.823436940173572, 10.290366115293528, 23.485606652865602], [-19.014117271934744, 7.875905250587889, 23.485606652865602], [-19.879460785463863, 5.32668546343122, 23.485606652865602], [-20.404661213325898, 2.6863246111590176, 23.485606652865602], [-20.58073223058706, 2.520412785029721e-15, 23.485606652865602], [-20.404661213325898, -2.6863246111590215, 23.485606652865602], [-19.87946078546387, -5.326685463431207, 23.485606652865602], [-19.014117271934747, -7.875905250587883, 23.485606652865602], [-17.82343694017357, -10.290366115293532, 23.485606652865602], [-16.32779266077573, -12.528755962738007, 23.485606652865602], [-14.552775322032653, -14.55277532203265, 23.485606652865602], [-12.528755962738018, -16.32779266077572, 23.485606652865602], [-10.290366115293539, -17.823436940173565, 23.485606652865602], [-7.875905250587898, -19.01411727193474, 23.485606652865602], [-5.326685463431212, -19.879460785463866, 23.485606652865602], [-2.6863246111590184, -20.404661213325898, 23.485606652865602], [-3.780619177544581e-15, -20.58073223058706, 23.485606652865602], [2.686324611159011, -20.4046612133259, 23.485606652865602], [5.326685463431206, -19.87946078546387, 23.485606652865602], [7.875905250587891, -19.014117271934744, 23.485606652865602], [10.290366115293532, -17.82343694017357, 23.485606652865602], [12.52875596273801, -16.327792660775728, 23.485606652865602], [14.552775322032646, -14.552775322032653, 23.485606652865602], [16.32779266077572, -12.528755962738018, 23.485606652865602], [17.823436940173565, -10.290366115293539, 23.485606652865602], [19.01411727193474, -7.875905250587899, 23.485606652865602], [19.879460785463866, -5.326685463431214, 23.485606652865602], [20.404661213325898, -2.6863246111590198, 23.485606652865602], [24.007277706603613, 0, 31.240526692191327], [23.80189211778619, 3.133578544612302, 31.240526692191327], [23.189249555702222, 6.213540691534181, 31.240526692191327], [22.17983250444558, 9.187187434504972, 31.240526692191327], [20.790912369626547, 12.003638853301805, 31.240526692191327], [19.04625395983328, 14.614704683281218, 31.240526692191327], [16.97570886416804, 16.97570886416804, 31.240526692191327], [14.614704683281218, 19.04625395983328, 31.240526692191327], [12.00363885330181, 20.790912369626547, 31.240526692191327], [9.187187434504972, 22.17983250444558, 31.240526692191327], [6.213540691534181, 23.189249555702222, 31.240526692191327], [3.1335785446123054, 23.80189211778619, 31.240526692191327], [1.4700217899816862e-15, 24.007277706603613, 31.240526692191327], [-3.1335785446122975, 23.801892117786192, 31.240526692191327], [-6.213540691534184, 23.189249555702222, 31.240526692191327], [-9.18718743450497, 22.17983250444558, 31.240526692191327], [-12.003638853301801, 20.790912369626547, 31.240526692191327], [-14.614704683281218, 19.04625395983328, 31.240526692191327], [-16.97570886416804, 16.97570886416804, 31.240526692191327], [-19.046253959833276, 14.614704683281223, 31.240526692191327], [-20.790912369626547, 12.003638853301805, 31.240526692191327], [-22.17983250444558, 9.187187434504974, 31.240526692191327], [-23.189249555702222, 6.213540691534188, 31.240526692191327], [-23.80189211778619, 3.133578544612302, 31.240526692191327], [-24.007277706603613, 2.9400435799633725e-15, 31.240526692191327], [-23.80189211778619, -3.133578544612307, 31.240526692191327], [-23.189249555702226, -6.213540691534172, 31.240526692191327], [-22.179832504445585, -9.187187434504967, 31.240526692191327], [-20.790912369626547, -12.00363885330181, 31.240526692191327], [-19.046253959833287, -14.614704683281209, 31.240526692191327], [-16.975708864168045, -16.97570886416804, 31.240526692191327], [-14.614704683281223, -19.046253959833276, 31.240526692191327], [-12.003638853301817, -20.790912369626543, 31.240526692191327], [-9.187187434504985, -22.179832504445578, 31.240526692191327], [-6.213540691534178, -23.189249555702222, 31.240526692191327], [-3.1335785446123032, -23.80189211778619, 31.240526692191327], [-4.4100653699450585e-15, -24.007277706603613, 31.240526692191327], [3.133578544612295, -23.801892117786192, 31.240526692191327], [6.21354069153417, -23.189249555702226, 31.240526692191327], [9.187187434504978, -22.179832504445578, 31.240526692191327], [12.00363885330181, -20.790912369626547, 31.240526692191327], [14.614704683281214, -19.04625395983328, 31.240526692191327], [16.975708864168038, -16.975708864168045, 31.240526692191327], [19.046253959833276, -14.614704683281223, 31.240526692191327], [20.79091236962654, -12.003638853301817, 31.240526692191327], [22.179832504445578, -9.187187434504986, 31.240526692191327], [23.189249555702222, -6.21354069153418, 31.240526692191327], [23.80189211778619, -3.1335785446123046, 31.240526692191327], [28.491076872386767, 0, 40.37124462577334], [28.247331760134074, 3.7188317764014207, 40.37124462577334], [27.520266969825553, 7.374033310053656, 40.37124462577334], [26.32232278160382, 10.903063089302595, 40.37124462577334], [24.673996352662233, 14.245538436193382, 40.37124462577334], [22.6034910052024, 17.34426867083148, 40.37124462577334], [20.146233659771895, 20.14623365977189, 40.37124462577334], [17.34426867083148, 22.6034910052024, 40.37124462577334], [14.245538436193387, 24.67399635266223, 40.37124462577334], [10.903063089302597, 26.32232278160382, 40.37124462577334], [7.374033310053656, 27.520266969825553, 40.37124462577334], [3.7188317764014247, 28.247331760134074, 40.37124462577334], [1.7445753048014819e-15, 28.491076872386767, 40.37124462577334], [-3.7188317764014154, 28.247331760134077, 40.37124462577334], [-7.374033310053659, 27.520266969825553, 40.37124462577334], [-10.903063089302593, 26.32232278160382, 40.37124462577334], [-14.245538436193376, 24.673996352662233, 40.37124462577334], [-17.34426867083148, 22.6034910052024, 40.37124462577334], [-20.14623365977189, 20.146233659771895, 40.37124462577334], [-22.603491005202397, 17.344268670831486, 40.37124462577334], [-24.673996352662233, 14.245538436193382, 40.37124462577334], [-26.32232278160382, 10.903063089302599, 40.37124462577334], [-27.52026696982555, 7.374033310053664, 40.37124462577334], [-28.247331760134074, 3.7188317764014207, 40.37124462577334], [-28.491076872386767, 3.4891506096029637e-15, 40.37124462577334], [-28.247331760134074, -3.7188317764014265, 40.37124462577334], [-27.520266969825556, -7.374033310053645, 40.37124462577334], [-26.322322781603823, -10.90306308930259, 40.37124462577334], [-24.67399635266223, -14.245538436193387, 40.37124462577334], [-22.603491005202404, -17.34426867083147, 40.37124462577334], [-20.146233659771898, -20.14623365977189, 40.37124462577334], [-17.344268670831486, -22.603491005202393, 40.37124462577334], [-14.245538436193396, -24.673996352662225, 40.37124462577334], [-10.903063089302611, -26.322322781603813, 40.37124462577334], [-7.374033310053653, -27.520266969825553, 40.37124462577334], [-3.7188317764014225, -28.247331760134074, 40.37124462577334], [-5.2337259144044454e-15, -28.491076872386767, 40.37124462577334], [3.7188317764014123, -28.247331760134077, 40.37124462577334], [7.374033310053644, -27.520266969825556, 40.37124462577334], [10.903063089302602, -26.322322781603816, 40.37124462577334], [14.245538436193387, -24.67399635266223, 40.37124462577334], [17.344268670831475, -22.6034910052024, 40.37124462577334], [20.14623365977189, -20.146233659771898, 40.37124462577334], [22.603491005202393, -17.344268670831486, 40.37124462577334], [24.673996352662222, -14.245538436193396, 40.37124462577334], [26.322322781603813, -10.903063089302613, 40.37124462577334], [27.520266969825553, -7.374033310053655, 40.37124462577334], [28.247331760134074, -3.7188317764014243, 40.37124462577334], [34.229591233990256, 0, 51.279867070758065], [33.93675233586566, 4.467858205021605, 51.279867070758065], [33.06324619622909, 8.859270117430972, 51.279867070758065], [31.624018747311357, 13.09909746187738, 51.279867070758065], [29.643695569792694, 17.114795616995124, 51.279867070758065], [27.15616054228975, 20.837654873988285, 51.279867070758065], [24.203976078798114, 24.20397607879811, 51.279867070758065], [20.837654873988285, 27.15616054228975, 51.279867070758065], [17.11479561699513, 29.64369556979269, 51.279867070758065], [13.099097461877381, 31.624018747311357, 51.279867070758065], [8.859270117430972, 33.06324619622909, 51.279867070758065], [4.467858205021609, 33.93675233586566, 51.279867070758065], [2.095957967041423e-15, 34.229591233990256, 51.279867070758065], [-4.467858205021598, 33.93675233586567, 51.279867070758065], [-8.859270117430976, 33.06324619622909, 51.279867070758065], [-13.099097461877378, 31.624018747311357, 51.279867070758065], [-17.11479561699512, 29.643695569792694, 51.279867070758065], [-20.837654873988285, 27.15616054228975, 51.279867070758065], [-24.20397607879811, 24.203976078798114, 51.279867070758065], [-27.156160542289747, 20.837654873988292, 51.279867070758065], [-29.643695569792694, 17.114795616995124, 51.279867070758065], [-31.624018747311357, 13.099097461877385, 51.279867070758065], [-33.06324619622908, 8.859270117430983, 51.279867070758065], [-33.93675233586566, 4.467858205021605, 51.279867070758065], [-34.229591233990256, 4.191915934082846e-15, 51.279867070758065], [-33.93675233586566, -4.467858205021611, 51.279867070758065], [-33.06324619622909, -8.85927011743096, 51.279867070758065], [-31.62401874731136, -13.099097461877374, 51.279867070758065], [-29.64369556979269, -17.11479561699513, 51.279867070758065], [-27.156160542289758, -20.837654873988274, 51.279867070758065], [-24.203976078798117, -24.20397607879811, 51.279867070758065], [-20.837654873988292, -27.156160542289744, 51.279867070758065], [-17.114795616995142, -29.643695569792687, 51.279867070758065], [-13.099097461877399, -31.62401874731135, 51.279867070758065], [-8.859270117430968, -33.06324619622909, 51.279867070758065], [-4.4678582050216065, -33.93675233586566, 51.279867070758065], [-6.28787390112427e-15, -34.229591233990256, 51.279867070758065], [4.467858205021594, -33.93675233586567, 51.279867070758065], [8.859270117430958, -33.06324619622909, 51.279867070758065], [13.099097461877388, -31.624018747311354, 51.279867070758065], [17.11479561699513, -29.64369556979269, 51.279867070758065], [20.83765487398828, -27.15616054228975, 51.279867070758065], [24.203976078798107, -24.203976078798117, 51.279867070758065], [27.156160542289744, -20.837654873988292, 51.279867070758065], [29.643695569792683, -17.114795616995142, 51.279867070758065], [31.62401874731135, -13.0990974618774, 51.279867070758065], [33.06324619622909, -8.85927011743097, 51.279867070758065], [33.93675233586566, -4.467858205021608, 51.279867070758065], [41.47553855295002, 0, 64.44679757273617], [41.12070957103366, 5.413644117592514, 64.44679757273617], [40.06229384754236, 10.734659283387309, 64.44679757273617], [38.318401168953315, 15.872001452633523, 64.44679757273617], [35.9188700224956, 20.737769276475007, 64.44679757273617], [32.904757051360804, 25.248708118400142, 64.44679757273617], [29.327634564155048, 29.327634564155044, 64.44679757273617], [25.248708118400142, 32.904757051360804, 64.44679757273617], [20.737769276475014, 35.91887002249559, 64.44679757273617], [15.872001452633524, 38.318401168953315, 64.44679757273617], [10.734659283387309, 40.06229384754236, 64.44679757273617], [5.413644117592519, 41.12070957103366, 64.44679757273617], [2.5396442765891445e-15, 41.47553855295002, 64.44679757273617], [-5.413644117592506, 41.120709571033665, 64.44679757273617], [-10.734659283387314, 40.06229384754236, 64.44679757273617], [-15.872001452633521, 38.318401168953315, 64.44679757273617], [-20.737769276475, 35.9188700224956, 64.44679757273617], [-25.248708118400142, 32.904757051360804, 64.44679757273617], [-29.327634564155044, 29.327634564155048, 64.44679757273617], [-32.9047570513608, 25.24870811840015, 64.44679757273617], [-35.9188700224956, 20.737769276475007, 64.44679757273617], [-38.318401168953315, 15.872001452633528, 64.44679757273617], [-40.06229384754235, 10.734659283387321, 64.44679757273617], [-41.12070957103366, 5.413644117592514, 64.44679757273617], [-41.47553855295002, 5.079288553178289e-15, 64.44679757273617], [-41.12070957103366, -5.413644117592522, 64.44679757273617], [-40.062293847542364, -10.734659283387293, 64.44679757273617], [-38.31840116895332, -15.872001452633516, 64.44679757273617], [-35.91887002249559, -20.737769276475014, 64.44679757273617], [-32.90475705136081, -25.248708118400128, 64.44679757273617], [-29.32763456415505, -29.327634564155044, 64.44679757273617], [-25.24870811840015, -32.90475705136079, 64.44679757273617], [-20.737769276475028, -35.91887002249559, 64.44679757273617], [-15.872001452633546, -38.31840116895331, 64.44679757273617], [-10.734659283387304, -40.06229384754236, 64.44679757273617], [-5.413644117592517, -41.12070957103366, 64.44679757273617], [-7.618932829767432e-15, -41.47553855295002, 64.44679757273617], [5.413644117592502, -41.120709571033665, 64.44679757273617], [10.734659283387291, -40.062293847542364, 64.44679757273617], [15.872001452633532, -38.31840116895331, 64.44679757273617], [20.737769276475014, -35.91887002249559, 64.44679757273617], [25.248708118400135, -32.904757051360804, 64.44679757273617], [29.327634564155037, -29.32763456415505, 64.44679757273617], [32.90475705136079, -25.24870811840015, 64.44679757273617], [35.91887002249558, -20.737769276475028, 64.44679757273617], [38.31840116895331, -15.872001452633548, 64.44679757273617], [40.06229384754236, -10.734659283387307, 64.44679757273617], [41.12070957103366, -5.4136441175925185, 64.44679757273617], [50.5480222541711, 0, 80.45189304119327], [50.11557691650695, 6.597840869091382, 80.45189304119327], [48.82564016313844, 13.082790851645532, 80.45189304119327], [46.700283169553714, 19.34389065549314, 80.45189304119327], [43.775871383173325, 25.274011127085547, 80.45189304119327], [40.102442300462336, 30.771686261013812, 80.45189304119327], [35.742849311492904, 35.7428493114929, 80.45189304119327], [30.771686261013812, 40.102442300462336, 80.45189304119327], [25.274011127085558, 43.77587138317332, 80.45189304119327], [19.343890655493144, 46.700283169553714, 80.45189304119327], [13.082790851645532, 48.82564016313844, 80.45189304119327], [6.597840869091389, 50.11557691650695, 80.45189304119327], [3.0951736828399907e-15, 50.5480222541711, 80.45189304119327], [-6.597840869091372, 50.11557691650695, 80.45189304119327], [-13.082790851645537, 48.82564016313844, 80.45189304119327], [-19.343890655493137, 46.700283169553714, 80.45189304119327], [-25.27401112708554, 43.775871383173325, 80.45189304119327], [-30.771686261013812, 40.102442300462336, 80.45189304119327], [-35.7428493114929, 35.742849311492904, 80.45189304119327], [-40.10244230046233, 30.771686261013823, 80.45189304119327], [-43.775871383173325, 25.274011127085547, 80.45189304119327], [-46.700283169553714, 19.343890655493144, 80.45189304119327], [-48.82564016313843, 13.082790851645546, 80.45189304119327], [-50.11557691650695, 6.597840869091382, 80.45189304119327], [-50.5480222541711, 6.190347365679981e-15, 80.45189304119327], [-50.11557691650695, -6.5978408690913914, 80.45189304119327], [-48.82564016313844, -13.082790851645512, 80.45189304119327], [-46.70028316955372, -19.34389065549313, 80.45189304119327], [-43.77587138317332, -25.274011127085558, 80.45189304119327], [-40.10244230046234, -30.771686261013794, 80.45189304119327], [-35.74284931149291, -35.7428493114929, 80.45189304119327], [-30.771686261013823, -40.10244230046232, 80.45189304119327], [-25.274011127085572, -43.77587138317331, 80.45189304119327], [-19.34389065549317, -46.70028316955371, 80.45189304119327], [-13.082790851645527, -48.82564016313844, 80.45189304119327], [-6.597840869091384, -50.11557691650695, 80.45189304119327], [-9.285521048519972e-15, -50.5480222541711, 80.45189304119327], [6.597840869091367, -50.11557691650695, 80.45189304119327], [13.08279085164551, -48.82564016313844, 80.45189304119327], [19.34389065549315, -46.70028316955371, 80.45189304119327], [25.274011127085558, -43.77587138317332, 80.45189304119327], [30.77168626101381, -40.102442300462336, 80.45189304119327], [35.74284931149289, -35.74284931149291, 80.45189304119327], [40.10244230046232, -30.771686261013823, 80.45189304119327], [43.7758713831733, -25.274011127085572, 80.45189304119327], [46.70028316955371, -19.34389065549317, 80.45189304119327], [48.82564016313844, -13.08279085164553, 80.45189304119327], [50.11557691650695, -6.597840869091387, 80.45189304119327], [61.846584384264894, 0, 99.99999999999999], [61.31747828130117, 8.0725991614942, 99.99999999999999], [59.73921312452766, 16.00707391318791, 99.99999999999999], [57.1387934683545, 23.667663192227653, 99.99999999999999], [53.56071321407136, 30.923292192132443, 99.99999999999999], [49.0661943068603, 37.64981508907353, 99.99999999999999], [43.73213921133975, 43.73213921133974, 99.99999999999999], [37.64981508907353, 49.0661943068603, 99.99999999999999], [30.923292192132454, 53.560713214071356, 99.99999999999999], [23.667663192227657, 57.1387934683545, 99.99999999999999], [16.00707391318791, 59.73921312452766, 99.99999999999999], [8.072599161494209, 61.31747828130117, 99.99999999999999], [3.787011080219334e-15, 61.846584384264894, 99.99999999999999], [-8.072599161494187, 61.31747828130118, 99.99999999999999], [-16.007073913187917, 59.73921312452766, 99.99999999999999], [-23.66766319222765, 57.1387934683545, 99.99999999999999], [-30.923292192132433, 53.56071321407136, 99.99999999999999], [-37.64981508907353, 49.0661943068603, 99.99999999999999], [-43.73213921133974, 43.73213921133975, 99.99999999999999], [-49.06619430686029, 37.64981508907354, 99.99999999999999], [-53.56071321407136, 30.923292192132443, 99.99999999999999], [-57.1387934683545, 23.66766319222766, 99.99999999999999], [-59.73921312452765, 16.007073913187927, 99.99999999999999], [-61.31747828130117, 8.0725991614942, 99.99999999999999], [-61.846584384264894, 7.574022160438668e-15, 99.99999999999999], [-61.31747828130117, -8.072599161494212, 99.99999999999999], [-59.739213124527666, -16.007073913187888, 99.99999999999999], [-57.13879346835451, -23.667663192227643, 99.99999999999999], [-53.560713214071356, -30.923292192132454, 99.99999999999999], [-49.06619430686031, -37.649815089073506, 99.99999999999999], [-43.73213921133976, -43.73213921133974, 99.99999999999999], [-37.64981508907354, -49.06619430686028, 99.99999999999999], [-30.923292192132475, -53.56071321407135, 99.99999999999999], [-23.667663192227685, -57.138793468354486, 99.99999999999999], [-16.007073913187902, -59.73921312452766, 99.99999999999999], [-8.072599161494203, -61.31747828130117, 99.99999999999999], [-1.1361033240658002e-14, -61.846584384264894, 99.99999999999999], [8.07259916149418, -61.31747828130118, 99.99999999999999], [16.007073913187885, -59.739213124527666, 99.99999999999999], [23.667663192227668, -57.13879346835449, 99.99999999999999], [30.923292192132454, -53.560713214071356, 99.99999999999999], [37.64981508907352, -49.0661943068603, 99.99999999999999], [43.732139211339735, -43.73213921133976, 99.99999999999999], [49.06619430686028, -37.64981508907354, 99.99999999999999], [53.56071321407135, -30.923292192132475, 99.99999999999999], [57.138793468354486, -23.66766319222769, 99.99999999999999], [59.73921312452766, -16.007073913187906, 99.99999999999999], [61.31747828130117, -8.072599161494207, 99.99999999999999]], "faces": [[0, 1, 49], [0, 49, 48], [1, 2, 50], [1, 50, 49], [2, 3, 51], [2, 51, 50], [3, 4, 52], [3, 52, 51], [4, 5, 53], [4, 53, 52], [5, 6, 54], [5, 54, 53], [6, 7, 55], [6, 55, 54], [7, 8, 56], [7, 56, 55], [8, 9, 57], [8, 57, 56], [9, 10, 58], [9, 58, 57], [10, 11, 59], [10, 59, 58], [11, 12, 60], [11, 60, 59], [12, 13, 61], [12, 61, 60], [13, 14, 62], [13, 62, 61], [14, 15, 63], [14, 63, 62], [15, 16, 64], [15, 64, 63], [16, 17, 65], [16, 65, 64], [17, 18, 66], [17, 66, 65], [18, 19, 67], [18, 67, 66], [19, 20, 68], [19, 68, 67], [20, 21, 69], [20, 69, 68], [21, 22, 70], [21, 70, 69], [22, 23, 71], [22, 71, 70], [23, 24, 72], [23, 72, 71], [24, 25, 73], [24, 73, 72], [25, 26, 74], [25, 74, 73], [26, 27, 75], [26, 75, 74], [27, 28, 76], [27, 76, 75], [28, 29, 77], [28, 77, 76], [29, 30, 78], [29, 78, 77], [30, 31, 79], [30, 79, 78], [31, 32, 80], [31, 80, 79], [32, 33, 81], [32, 81, 80], [33, 34, 82], [33, 82, 81], [34, 35, 83], [34, 83, 82], [35, 36, 84], [35, 84, 83], [36, 37, 85], [36, 85, 84], [37, 38, 86], [37, 86, 85], [38, 39, 87], [38, 87, 86], [39, 40, 88], [39, 88, 87], [40, 41, 89], [40, 89, 88], [41, 42, 90], [41, 90, 89], [42, 43, 91], [42, 91, 90], [43, 44, 92], [43, 92, 91], [44, 45, 93], [44, 93, 92], [45, 46, 94], [45, 94, 93], [46, 47, 95], [46, 95, 94], [47, 0, 48], [47, 48, 95], [48, 49, 97], [48, 97, 96], [49, 50, 98], [49, 98, 97], [50, 51, 99], [50, 99, 98], [51, 52, 100], [51, 100, 99], [52, 53, 101], [52, 101, 100], [53, 54, 102], [53, 102, 101], [54, 55, 103], [54, 103, 102], [55, 56, 104], [55, 104, 103], [56, 57, 105], [56, 105, 104], [57, 58, 106], [57, 106, 105], [58, 59, 107], [58, 107, 106], [59, 60, 108], [59, 108, 107], [60, 61, 109], [60, 109, 108], [61, 62, 110], [61, 110, 109], [62, 63, 111], [62, 111, 110], [63, 64, 112], [63, 112, 111], [64, 65, 113], [64, 113, 112], [65, 66, 114], [65, 114, 113], [66, 67, 115], [66, 115, 114], [67, 68, 116], [67, 116, 115], [68, 69, 117], [68, 117, 116], [69, 70, 118], [69, 118, 117], [70, 71, 119], [70, 119, 118], [71, 72, 120], [71, 120, 119], [72, 73, 121], [72, 121, 120], [73, 74, 122], [73, 122, 121], [74, 75, 123], [74, 123, 122], [75, 76, 124], [75, 124, 123], [76, 77, 125], [76, 125, 124], [77, 78, 126], [77, 126, 125], [78, 79, 127], [78, 127, 126], [79, 80, 128], [79, 128, 127], [80, 81, 129], [80, 129, 128], [81, 82, 130], [81, 130, 129], [82, 83, 131], [82, 131, 130], [83, 84, 132], [83, 132, 131], [84, 85, 133], [84, 133, 132], [85, 86, 134], [85, 134, 133], [86, 87, 135], [86, 135, 134], [87, 88, 136], [87, 136, 135], [88, 89, 137], [88, 137, 136], [89, 90, 138], [89, 138, 137], [90, 91, 139], [90, 139, 138], [91, 92, 140], [91, 140, 139], [92, 93, 141], [92, 141, 140], [93, 94, 142], [93, 142, 141], [94, 95, 143], [94, 143, 142], [95, 48, 96], [95, 96, 143], [96, 97, 145], [96, 145, 144], [97, 98, 146], [97, 146, 145], [98, 99, 147], [98, 147, 146], [99, 100, 148], [99, 148, 147], [100, 101, 149], [100, 149, 148], [101, 102, 150], [101, 150, 149], [102, 103, 151], [102, 151, 150], [103, 104, 152], [103, 152, 151], [104, 105, 153], [104, 153, 152], [105, 106, 154], [105, 154, 153], [106, 107, 155], [106, 155, 154], [107, 108, 156], [107, 156, 155], [108, 109, 157], [108, 157, 156], [109, 110, 158], [109, 158, 157], [110, 111, 159], [110, 159, 158], [111, 112, 160], [111, 160, 159], [112, 113, 161], [112, 161, 160], [113, 114, 162], [113, 162, 161], [114, 115, 163], [114, 163, 162], [115, 116, 164], [115, 164, 163], [116, 117, 165], [116, 165, 164], [117, 118, 166], [117, 166, 165], [118, 119, 167], [118, 167, 166], [119, 120, 168], [119, 168, 167], [120, 121, 169], [120, 169, 168], [121, 122, 170], [121, 170, 169], [122, 123, 171], [122, 171, 170], [123, 124, 172], [123, 172, 171], [124, 125, 173], [124, 173, 172], [125, 126, 174], [125, 174, 173], [126, 127, 175], [126, 175, 174], [127, 128, 176], [127, 176, 175], [128, 129, 177], [128, 177, 176], [129, 130, 178], [129, 178, 177], [130, 131, 179], [130, 179, 178], [131, 132, 180], [131, 180, 179], [132, 133, 181], [132, 181, 180], [133, 134, 182], [133, 182, 181], [134, 135, 183], [134, 183, 182], [135, 136, 184], [135, 184, 183], [136, 137, 185], [136, 185, 184], [137, 138, 186], [137, 186, 185], [138, 139, 187], [138, 187, 186], [139, 140, 188], [139, 188, 187], [140, 141, 189], [140, 189, 188], [141, 142, 190], [141, 190, 189], [142, 143, 191], [142, 191, 190], [143, 96, 144], [143, 144, 191], [144, 145, 193], [144, 193, 192], [145, 146, 194], [145, 194, 193], [146, 147, 195], [146, 195, 194], [147, 148, 196], [147, 196, 195], [148, 149, 197], [148, 197, 196], [149, 150, 198], [149, 198, 197], [150, 151, 199], [150, 199, 198], [151, 152, 200], [151, 200, 199], [152, 153, 201], [152, 201, 200], [153, 154, 202], [153, 202, 201], [154, 155, 203], [154, 203, 202], [155, 156, 204], [155, 204, 203], [156, 157, 205], [156, 205, 204], [157, 158, 206], [157, 206, 205], [158, 159, 207], [158, 207, 206], [159, 160, 208], [159, 208, 207], [160, 161, 209], [160, 209, 208], [161, 162, 210], [161, 210, 209], [162, 163, 211], [162, 211, 210], [163, 164, 212], [163, 212, 211], [164, 165, 213], [164, 213, 212], [165, 166, 214], [165, 214, 213], [166, 167, 215], [166, 215, 214], [167, 168, 216], [167, 216, 215], [168, 169, 217], [168, 217, 216], [169, 170, 218], [169, 218, 217], [170, 171, 219], [170, 219, 218], [171, 172, 220], [171, 220, 219], [172, 173, 221], [172, 221, 220], [173, 174, 222], [173, 222, 221], [174, 175, 223], [174, 223, 222], [175, 176, 224], [175, 224, 223], [176, 177, 225], [176, 225, 224], [177, 178, 226], [177, 226, 225], [178, 179, 227], [178, 227, 226], [179, 180, 228], [179, 228, 227], [180, 181, 229], [180, 229, 228], [181, 182, 230], [181, 230, 229], [182, 183, 231], [182, 231, 230], [183, 184, 232], [183, 232, 231], [184, 185, 233], [184, 233, 232], [185, 186, 234], [185, 234, 233], [186, 187, 235], [186, 235, 234], [187, 188, 236], [187, 236, 235], [188, 189, 237], [188, 237, 236], [189, 190, 238], [189, 238, 237], [190, 191, 239], [190, 239, 238], [191, 144, 192], [191, 192, 239], [192, 193, 241], [192, 241, 240], [193, 194, 242], [193, 242, 241], [194, 195, 243], [194, 243, 242], [195, 196, 244], [195, 244, 243], [196, 197, 245], [196, 245, 244], [197, 198, 246], [197, 246, 245], [198, 199, 247], [198, 247, 246], [199, 200, 248], [199, 248, 247], [200, 201, 249], [200, 249, 248], [201, 202, 250], [201, 250, 249], [202, 203, 251], [202, 251, 250], [203, 204, 252], [203, 252, 251], [204, 205, 253], [204, 253, 252], [205, 206, 254], [205, 254, 253], [206, 207, 255], [206, 255, 254], [207, 208, 256], [207, 256, 255], [208, 209, 257], [208, 257, 256], [209, 210, 258], [209, 258, 257], [210, 211, 259], [210, 259, 258], [211, 212, 260], [211, 260, 259], [212, 213, 261], [212, 261, 260], [213, 214, 262], [213, 262, 261], [214, 215, 263], [214, 263, 262], [215, 216, 264], [215, 264, 263], [216, 217, 265], [216, 265, 264], [217, 218, 266], [217, 266, 265], [218, 219, 267], [218, 267, 266], [219, 220, 268], [219, 268, 267], [220, 221, 269], [220, 269, 268], [221, 222, 270], [221, 270, 269], [222, 223, 271], [222, 271, 270], [223, 224, 272], [223, 272, 271], [224, 225, 273], [224, 273, 272], [225, 226, 274], [225, 274, 273], [226, 227, 275], [226, 275, 274], [227, 228, 276], [227, 276, 275], [228, 229, 277], [228, 277, 276], [229, 230, 278], [229, 278, 277], [230, 231, 279], [230, 279, 278], [231, 232, 280], [231, 280, 279], [232, 233, 281], [232, 281, 280], [233, 234, 282], [233, 282, 281], [234, 235, 283], [234, 283, 282], [235, 236, 284], [235, 284, 283], [236, 237, 285], [236, 285, 284], [237, 238, 286], [237, 286, 285], [238, 239, 287], [238, 287, 286], [239, 192, 240], [239, 240, 287], [240, 241, 289], [240, 289, 288], [241, 242, 290], [241, 290, 289], [242, 243, 291], [242, 291, 290], [243, 244, 292], [243, 292, 291], [244, 245, 293], [244, 293, 292], [245, 246, 294], [245, 294, 293], [246, 247, 295], [246, 295, 294], [247, 248, 296], [247, 296, 295], [248, 249, 297], [248, 297, 296], [249, 250, 298], [249, 298, 297], [250, 251, 299], [250, 299, 298], [251, 252, 300], [251, 300, 299], [252, 253, 301], [252, 301, 300], [253, 254, 302], [253, 302, 301], [254, 255, 303], [254, 303, 302], [255, 256, 304], [255, 304, 303], [256, 257, 305], [256, 305, 304], [257, 258, 306], [257, 306, 305], [258, 259, 307], [258, 307, 306], [259, 260, 308], [259, 308, 307], [260, 261, 309], [260, 309, 308], [261, 262, 310], [261, 310, 309], [262, 263, 311], [262, 311, 310], [263, 264, 312], [263, 312, 311], [264, 265, 313], [264, 313, 312], [265, 266, 314], [265, 314, 313], [266, 267, 315], [266, 315, 314], [267, 268, 316], [267, 316, 315], [268, 269, 317], [268, 317, 316], [269, 270, 318], [269, 318, 317], [270, 271, 319], [270, 319, 318], [271, 272, 320], [271, 320, 319], [272, 273, 321], [272, 321, 320], [273, 274, 322], [273, 322, 321], [274, 275, 323], [274, 323, 322], [275, 276, 324], [275, 324, 323], [276, 277, 325], [276, 325, 324], [277, 278, 326], [277, 326, 325], [278, 279, 327], [278, 327, 326], [279, 280, 328], [279, 328, 327], [280, 281, 329], [280, 329, 328], [281, 282, 330], [281, 330, 329], [282, 283, 331], [282, 331, 330], [283, 284, 332], [283, 332, 331], [284, 285, 333], [284, 333, 332], [285, 286, 334], [285, 334, 333], [286, 287, 335], [286, 335, 334], [287, 240, 288], [287, 288, 335], [288, 289, 337], [288, 337, 336], [289, 290, 338], [289, 338, 337], [290, 291, 339], [290, 339, 338], [291, 292, 340], [291, 340, 339], [292, 293, 341], [292, 341, 340], [293, 294, 342], [293, 342, 341], [294, 295, 343], [294, 343, 342], [295, 296, 344], [295, 344, 343], [296, 297, 345], [296, 345, 344], [297, 298, 346], [297, 346, 345], [298, 299, 347], [298, 347, 346], [299, 300, 348], [299, 348, 347], [300, 301, 349], [300, 349, 348], [301, 302, 350], [301, 350, 349], [302, 303, 351], [302, 351, 350], [303, 304, 352], [303, 352, 351], [304, 305, 353], [304, 353, 352], [305, 306, 354], [305, 354, 353], [306, 307, 355], [306, 355, 354], [307, 308, 356], [307, 356, 355], [308, 309, 357], [308, 357, 356], [309, 310, 358], [309, 358, 357], [310, 311, 359], [310, 359, 358], [311, 312, 360], [311, 360, 359], [312, 313, 361], [312, 361, 360], [313, 314, 362], [313, 362, 361], [314, 315, 363], [314, 363, 362], [315, 316, 364], [315, 364, 363], [316, 317, 365], [316, 365, 364], [317, 318, 366], [317, 366, 365], [318, 319, 367], [318, 367, 366], [319, 320, 368], [319, 368, 367], [320, 321, 369], [320, 369, 368], [321, 322, 370], [321, 370, 369], [322, 323, 371], [322, 371, 370], [323, 324, 372], [323, 372, 371], [324, 325, 373], [324, 373, 372], [325, 326, 374], [325, 374, 373], [326, 327, 375], [326, 375, 374], [327, 328, 376], [327, 376, 375], [328, 329, 377], [328, 377, 376], [329, 330, 378], [329, 378, 377], [330, 331, 379], [330, 379, 378], [331, 332, 380], [331, 380, 379], [332, 333, 381], [332, 381, 380], [333, 334, 382], [333, 382, 381], [334, 335, 383], [334, 383, 382], [335, 288, 336], [335, 336, 383], [336, 337, 385], [336, 385, 384], [337, 338, 386], [337, 386, 385], [338, 339, 387], [338, 387, 386], [339, 340, 388], [339, 388, 387], [340, 341, 389], [340, 389, 388], [341, 342, 390], [341, 390, 389], [342, 343, 391], [342, 391, 390], [343, 344, 392], [343, 392, 391], [344, 345, 393], [344, 393, 392], [345, 346, 394], [345, 394, 393], [346, 347, 395], [346, 395, 394], [347, 348, 396], [347, 396, 395], [348, 349, 397], [348, 397, 396], [349, 350, 398], [349, 398, 397], [350, 351, 399], [350, 399, 398], [351, 352, 400], [351, 400, 399], [352, 353, 401], [352, 401, 400], [353, 354, 402], [353, 402, 401], [354, 355, 403], [354, 403, 402], [355, 356, 404], [355, 404, 403], [356, 357, 405], [356, 405, 404], [357, 358, 406], [357, 406, 405], [358, 359, 407], [358, 407, 406], [359, 360, 408], [359, 408, 407], [360, 361, 409], [360, 409, 408], [361, 362, 410], [361, 410, 409], [362, 363, 411], [362, 411, 410], [363, 364, 412], [363, 412, 411], [364, 365, 413], [364, 413, 412], [365, 366, 414], [365, 414, 413], [366, 367, 415], [366, 415, 414], [367, 368, 416], [367, 416, 415], [368, 369, 417], [368, 417, 416], [369, 370, 418], [369, 418, 417], [370, 371, 419], [370, 419, 418], [371, 372, 420], [371, 420, 419], [372, 373, 421], [372, 421, 420], [373, 374, 422], [373, 422, 421], [374, 375, 423], [374, 423, 422], [375, 376, 424], [375, 424, 423], [376, 377, 425], [376, 425, 424], [377, 378, 426], [377, 426, 425], [378, 379, 427], [378, 427, 426], [379, 380, 428], [379, 428, 427], [380, 381, 429], [380, 429, 428], [381, 382, 430], [381, 430, 429], [382, 383, 431], [382, 431, 430], [383, 336, 384], [383, 384, 431], [384, 385, 433], [384, 433, 432], [385, 386, 434], [385, 434, 433], [386, 387, 435], [386, 435, 434], [387, 388, 436], [387, 436, 435], [388, 389, 437], [388, 437, 436], [389, 390, 438], [389, 438, 437], [390, 391, 439], [390, 439, 438], [391, 392, 440], [391, 440, 439], [392, 393, 441], [392, 441, 440], [393, 394, 442], [393, 442, 441], [394, 395, 443], [394, 443, 442], [395, 396, 444], [395, 444, 443], [396, 397, 445], [396, 445, 444], [397, 398, 446], [397, 446, 445], [398, 399, 447], [398, 447, 446], [399, 400, 448], [399, 448, 447], [400, 401, 449], [400, 449, 448], [401, 402, 450], [401, 450, 449], [402, 403, 451], [402, 451, 450], [403, 404, 452], [403, 452, 451], [404, 405, 453], [404, 453, 452], [405, 406, 454], [405, 454, 453], [406, 407, 455], [406, 455, 454], [407, 408, 456], [407, 456, 455], [408, 409, 457], [408, 457, 456], [409, 410, 458], [409, 458, 457], [410, 411, 459], [410, 459, 458], [411, 412, 460], [411, 460, 459], [412, 413, 461], [412, 461, 460], [413, 414, 462], [413, 462, 461], [414, 415, 463], [414, 463, 462], [415, 416, 464], [415, 464, 463], [416, 417, 465], [416, 465, 464], [417, 418, 466], [417, 466, 465], [418, 419, 467], [418, 467, 466], [419, 420, 468], [419, 468, 467], [420, 421, 469], [420, 469, 468], [421, 422, 470], [421, 470, 469], [422, 423, 471], [422, 471, 470], [423, 424, 472], [423, 472, 471], [424, 425, 473], [424, 473, 472], [425, 426, 474], [425, 474, 473], [426, 427, 475], [426, 475, 474], [427, 428, 476], [427, 476, 475], [428, 429, 477], [428, 477, 476], [429, 430, 478], [429, 478, 477], [430, 431, 479], [430, 479, 478], [431, 384, 432], [431, 432, 479], [432, 433, 481], [432, 481, 480], [433, 434, 482], [433, 482, 481], [434, 435, 483], [434, 483, 482], [435, 436, 484], [435, 484, 483], [436, 437, 485], [436, 485, 484], [437, 438, 486], [437, 486, 485], [438, 439, 487], [438, 487, 486], [439, 440, 488], [439, 488, 487], [440, 441, 489], [440, 489, 488], [441, 442, 490], [441, 490, 489], [442, 443, 491], [442, 491, 490], [443, 444, 492], [443, 492, 491], [444, 445, 493], [444, 493, 492], [445, 446, 494], [445, 494, 493], [446, 447, 495], [446, 495, 494], [447, 448, 496], [447, 496, 495], [448, 449, 497], [448, 497, 496], [449, 450, 498], [449, 498, 497], [450, 451, 499], [450, 499, 498], [451, 452, 500], [451, 500, 499], [452, 453, 501], [452, 501, 500], [453, 454, 502], [453, 502, 501], [454, 455, 503], [454, 503, 502], [455, 456, 504], [455, 504, 503], [456, 457, 505], [456, 505, 504], [457, 458, 506], [457, 506, 505], [458, 459, 507], [458, 507, 506], [459, 460, 508], [459, 508, 507], [460, 461, 509], [460, 509, 508], [461, 462, 510], [461, 510, 509], [462, 463, 511], [462, 511, 510], [463, 464, 512], [463, 512, 511], [464, 465, 513], [464, 513, 512], [465, 466, 514], [465, 514, 513], [466, 467, 515], [466, 515, 514], [467, 468, 516], [467, 516, 515], [468, 469, 517], [468, 517, 516], [469, 470, 518], [469, 518, 517], [470, 471, 519], [470, 519, 518], [471, 472, 520], [471, 520, 519], [472, 473, 521], [472, 521, 520], [473, 474, 522], [473, 522, 521], [474, 475, 523], [474, 523, 522], [475, 476, 524], [475, 524, 523], [476, 477, 525], [476, 525, 524], [477, 478, 526], [477, 526, 525], [478, 479, 527], [478, 527, 526], [479, 432, 480], [479, 480, 527], [480, 481, 529], [480, 529, 528], [481, 482, 530], [481, 530, 529], [482, 483, 531], [482, 531, 530], [483, 484, 532], [483, 532, 531], [484, 485, 533], [484, 533, 532], [485, 486, 534], [485, 534, 533], [486, 487, 535], [486, 535, 534], [487, 488, 536], [487, 536, 535], [488, 489, 537], [488, 537, 536], [489, 490, 538], [489, 538, 537], [490, 491, 539], [490, 539, 538], [491, 492, 540], [491, 540, 539], [492, 493, 541], [492, 541, 540], [493, 494, 542], [493, 542, 541], [494, 495, 543], [494, 543, 542], [495, 496, 544], [495, 544, 543], [496, 497, 545], [496, 545, 544], [497, 498, 546], [497, 546, 545], [498, 499, 547], [498, 547, 546], [499, 500, 548], [499, 548, 547], [500, 501, 549], [500, 549, 548], [501, 502, 550], [501, 550, 549], [502, 503, 551], [502, 551, 550], [503, 504, 552], [503, 552, 551], [504, 505, 553], [504, 553, 552], [505, 506, 554], [505, 554, 553], [506, 507, 555], [506, 555, 554], [507, 508, 556], [507, 556, 555], [508, 509, 557], [508, 557, 556], [509, 510, 558], [509, 558, 557], [510, 511, 559], [510, 559, 558], [511, 512, 560], [511, 560, 559], [512, 513, 561], [512, 561, 560], [513, 514, 562], [513, 562, 561], [514, 515, 563], [514, 563, 562], [515, 516, 564], [515, 564, 563], [516, 517, 565], [516, 565, 564], [517, 518, 566], [517, 566, 565], [518, 519, 567], [518, 567, 566], [519, 520, 568], [519, 568, 567], [520, 521, 569], [520, 569, 568], [521, 522, 570], [521, 570, 569], [522, 523, 571], [522, 571, 570], [523, 524, 572], [523, 572, 571], [524, 525, 573], [524, 573, 572], [525, 526, 574], [525, 574, 573], [526, 527, 575], [526, 575, 574], [527, 480, 528], [527, 528, 575], [528, 529, 577], [528, 577, 576], [529, 530, 578], [529, 578, 577], [530, 531, 579], [530, 579, 578], [531, 532, 580], [531, 580, 579], [532, 533, 581], [532, 581, 580], [533, 534, 582], [533, 582, 581], [534, 535, 583], [534, 583, 582], [535, 536, 584], [535, 584, 583], [536, 537, 585], [536, 585, 584], [537, 538, 586], [537, 586, 585], [538, 539, 587], [538, 587, 586], [539, 540, 588], [539, 588, 587], [540, 541, 589], [540, 589, 588], [541, 542, 590], [541, 590, 589], [542, 543, 591], [542, 591, 590], [543, 544, 592], [543, 592, 591], [544, 545, 593], [544, 593, 592], [545, 546, 594], [545, 594, 593], [546, 547, 595], [546, 595, 594], [547, 548, 596], [547, 596, 595], [548, 549, 597], [548, 597, 596], [549, 550, 598], [549, 598, 597], [550, 551, 599], [550, 599, 598], [551, 552, 600], [551, 600, 599], [552, 553, 601], [552, 601, 600], [553, 554, 602], [553, 602, 601], [554, 555, 603], [554, 603, 602], [555, 556, 604], [555, 604, 603], [556, 557, 605], [556, 605, 604], [557, 558, 606], [557, 606, 605], [558, 559, 607], [558, 607, 606], [559, 560, 608], [559, 608, 607], [560, 561, 609], [560, 609, 608], [561, 562, 610], [561, 610, 609], [562, 563, 611], [562, 611, 610], [563, 564, 612], [563, 612, 611], [564, 565, 613], [564, 613, 612], [565, 566, 614], [565, 614, 613], [566, 567, 615], [566, 615, 614], [567, 568, 616], [567, 616, 615], [568, 569, 617], [568, 617, 616], [569, 570, 618], [569, 618, 617], [570, 571, 619], [570, 619, 618], [571, 572, 620], [571, 620, 619], [572, 573, 621], [572, 621, 620], [573, 574, 622], [573, 622, 621], [574, 575, 623], [574, 623, 622], [575, 528, 576], [575, 576, 623], [576, 577, 625], [576, 625, 624], [577, 578, 626], [577, 626, 625], [578, 579, 627], [578, 627, 626], [579, 580, 628], [579, 628, 627], [580, 581, 629], [580, 629, 628], [581, 582, 630], [581, 630, 629], [582, 583, 631], [582, 631, 630], [583, 584, 632], [583, 632, 631], [584, 585, 633], [584, 633, 632], [585, 586, 634], [585, 634, 633], [586, 587, 635], [586, 635, 634], [587, 588, 636], [587, 636, 635], [588, 589, 637], [588, 637, 636], [589, 590, 638], [589, 638, 637], [590, 591, 639], [590, 639, 638], [591, 592, 640], [591, 640, 639], [592, 593, 641], [592, 641, 640], [593, 594, 642], [593, 642, 641], [594, 595, 643], [594, 643, 642], [595, 596, 644], [595, 644, 643], [596, 597, 645], [596, 645, 644], [597, 598, 646], [597, 646, 645], [598, 599, 647], [598, 647, 646], [599, 600, 648], [599, 648, 647], [600, 601, 649], [600, 649, 648], [601, 602, 650], [601, 650, 649], [602, 603, 651], [602, 651, 650], [603, 604, 652], [603, 652, 651], [604, 605, 653], [604, 653, 652], [605, 606, 654], [605, 654, 653], [606, 607, 655], [606, 655, 654], [607, 608, 656], [607, 656, 655], [608, 609, 657], [608, 657, 656], [609, 610, 658], [609, 658, 657], [610, 611, 659], [610, 659, 658], [611, 612, 660], [611, 660, 659], [612, 613, 661], [612, 661, 660], [613, 614, 662], [613, 662, 661], [614, 615, 663], [614, 663, 662], [615, 616, 664], [615, 664, 663], [616, 617, 665], [616, 665, 664], [617, 618, 666], [617, 666, 665], [618, 619, 667], [618, 667, 666], [619, 620, 668], [619, 668, 667], [620, 621, 669], [620, 669, 668], [621, 622, 670], [621, 670, 669], [622, 623, 671], [622, 671, 670], [623, 576, 624], [623, 624, 671], [624, 625, 673], [624, 673, 672], [625, 626, 674], [625, 674, 673], [626, 627, 675], [626, 675, 674], [627, 628, 676], [627, 676, 675], [628, 629, 677], [628, 677, 676], [629, 630, 678], [629, 678, 677], [630, 631, 679], [630, 679, 678], [631, 632, 680], [631, 680, 679], [632, 633, 681], [632, 681, 680], [633, 634, 682], [633, 682, 681], [634, 635, 683], [634, 683, 682], [635, 636, 684], [635, 684, 683], [636, 637, 685], [636, 685, 684], [637, 638, 686], [637, 686, 685], [638, 639, 687], [638, 687, 686], [639, 640, 688], [639, 688, 687], [640, 641, 689], [640, 689, 688], [641, 642, 690], [641, 690, 689], [642, 643, 691], [642, 691, 690], [643, 644, 692], [643, 692, 691], [644, 645, 693], [644, 693, 692], [645, 646, 694], [645, 694, 693], [646, 647, 695], [646, 695, 694], [647, 648, 696], [647, 696, 695], [648, 649, 697], [648, 697, 696], [649, 650, 698], [649, 698, 697], [650, 651, 699], [650, 699, 698], [651, 652, 700], [651, 700, 699], [652, 653, 701], [652, 701, 700], [653, 654, 702], [653, 702, 701], [654, 655, 703], [654, 703, 702], [655, 656, 704], [655, 704, 703], [656, 657, 705], [656, 705, 704], [657, 658, 706], [657, 706, 705], [658, 659, 707], [658, 707, 706], [659, 660, 708], [659, 708, 707], [660, 661, 709], [660, 709, 708], [661, 662, 710], [661, 710, 709], [662, 663, 711], [662, 711, 710], [663, 664, 712], [663, 712, 711], [664, 665, 713], [664, 713, 712], [665, 666, 714], [665, 714, 713], [666, 667, 715], [666, 715, 714], [667, 668, 716], [667, 716, 715], [668, 669, 717], [668, 717, 716], [669, 670, 718], [669, 718, 717], [670, 671, 719], [670, 719, 718], [671, 624, 672], [671, 672, 719], [672, 673, 721], [672, 721, 720], [673, 674, 722], [673, 722, 721], [674, 675, 723], [674, 723, 722], [675, 676, 724], [675, 724, 723], [676, 677, 725], [676, 725, 724], [677, 678, 726], [677, 726, 725], [678, 679, 727], [678, 727, 726], [679, 680, 728], [679, 728, 727], [680, 681, 729], [680, 729, 728], [681, 682, 730], [681, 730, 729], [682, 683, 731], [682, 731, 730], [683, 684, 732], [683, 732, 731], [684, 685, 733], [684, 733, 732], [685, 686, 734], [685, 734, 733], [686, 687, 735], [686, 735, 734], [687, 688, 736], [687, 736, 735], [688, 689, 737], [688, 737, 736], [689, 690, 738], [689, 738, 737], [690, 691, 739], [690, 739, 738], [691, 692, 740], [691, 740, 739], [692, 693, 741], [692, 741, 740], [693, 694, 742], [693, 742, 741], [694, 695, 743], [694, 743, 742], [695, 696, 744], [695, 744, 743], [696, 697, 745], [696, 745, 744], [697, 698, 746], [697, 746, 745], [698, 699, 747], [698, 747, 746], [699, 700, 748], [699, 748, 747], [700, 701, 749], [700, 749, 748], [701, 702, 750], [701, 750, 749], [702, 703, 751], [702, 751, 750], [703, 704, 752], [703, 752, 751], [704, 705, 753], [704, 753, 752], [705, 706, 754], [705, 754, 753], [706, 707, 755], [706, 755, 754], [707, 708, 756], [707, 756, 755], [708, 709, 757], [708, 757, 756], [709, 710, 758], [709, 758, 757], [710, 711, 759], [710, 759, 758], [711, 712, 760], [711, 760, 759], [712, 713, 761], [712, 761, 760], [713, 714, 762], [713, 762, 761], [714, 715, 763], [714, 763, 762], [715, 716, 764], [715, 764, 763], [716, 717, 765], [716, 765, 764], [717, 718, 766], [717, 766, 765], [718, 719, 767], [718, 767, 766], [719, 672, 720], [719, 720, 767], [720, 721, 769], [720, 769, 768], [721, 722, 770], [721, 770, 769], [722, 723, 771], [722, 771, 770], [723, 724, 772], [723, 772, 771], [724, 725, 773], [724, 773, 772], [725, 726, 774], [725, 774, 773], [726, 727, 775], [726, 775, 774], [727, 728, 776], [727, 776, 775], [728, 729, 777], [728, 777, 776], [729, 730, 778], [729, 778, 777], [730, 731, 779], [730, 779, 778], [731, 732, 780], [731, 780, 779], [732, 733, 781], [732, 781, 780], [733, 734, 782], [733, 782, 781], [734, 735, 783], [734, 783, 782], [735, 736, 784], [735, 784, 783], [736, 737, 785], [736, 785, 784], [737, 738, 786], [737, 786, 785], [738, 739, 787], [738, 787, 786], [739, 740, 788], [739, 788, 787], [740, 741, 789], [740, 789, 788], [741, 742, 790], [741, 790, 789], [742, 743, 791], [742, 791, 790], [743, 744, 792], [743, 792, 791], [744, 745, 793], [744, 793, 792], [745, 746, 794], [745, 794, 793], [746, 747, 795], [746, 795, 794], [747, 748, 796], [747, 796, 795], [748, 749, 797], [748, 797, 796], [749, 750, 798], [749, 798, 797], [750, 751, 799], [750, 799, 798], [751, 752, 800], [751, 800, 799], [752, 753, 801], [752, 801, 800], [753, 754, 802], [753, 802, 801], [754, 755, 803], [754, 803, 802], [755, 756, 804], [755, 804, 803], [756, 757, 805], [756, 805, 804], [757, 758, 806], [757, 806, 805], [758, 759, 807], [758, 807, 806], [759, 760, 808], [759, 808, 807], [760, 761, 809], [760, 809, 808], [761, 762, 810], [761, 810, 809], [762, 763, 811], [762, 811, 810], [763, 764, 812], [763, 812, 811], [764, 765, 813], [764, 813, 812], [765, 766, 814], [765, 814, 813], [766, 767, 815], [766, 815, 814], [767, 720, 768], [767, 768, 815], [768, 769, 817], [768, 817, 816], [769, 770, 818], [769, 818, 817], [770, 771, 819], [770, 819, 818], [771, 772, 820], [771, 820, 819], [772, 773, 821], [772, 821, 820], [773, 774, 822], [773, 822, 821], [774, 775, 823], [774, 823, 822], [775, 776, 824], [775, 824, 823], [776, 777, 825], [776, 825, 824], [777, 778, 826], [777, 826, 825], [778, 779, 827], [778, 827, 826], [779, 780, 828], [779, 828, 827], [780, 781, 829], [780, 829, 828], [781, 782, 830], [781, 830, 829], [782, 783, 831], [782, 831, 830], [783, 784, 832], [783, 832, 831], [784, 785, 833], [784, 833, 832], [785, 786, 834], [785, 834, 833], [786, 787, 835], [786, 835, 834], [787, 788, 836], [787, 836, 835], [788, 789, 837], [788, 837, 836], [789, 790, 838], [789, 838, 837], [790, 791, 839], [790, 839, 838], [791, 792, 840], [791, 840, 839], [792, 793, 841], [792, 841, 840], [793, 794, 842], [793, 842, 841], [794, 795, 843], [794, 843, 842], [795, 796, 844], [795, 844, 843], [796, 797, 845], [796, 845, 844], [797, 798, 846], [797, 846, 845], [798, 799, 847], [798, 847, 846], [799, 800, 848], [799, 848, 847], [800, 801, 849], [800, 849, 848], [801, 802, 850], [801, 850, 849], [802, 803, 851], [802, 851, 850], [803, 804, 852], [803, 852, 851], [804, 805, 853], [804, 853, 852], [805, 806, 854], [805, 854, 853], [806, 807, 855], [806, 855, 854], [807, 808, 856], [807, 856, 855], [808, 809, 857], [808, 857, 856], [809, 810, 858], [809, 858, 857], [810, 811, 859], [810, 859, 858], [811, 812, 860], [811, 860, 859], [812, 813, 861], [812, 861, 860], [813, 814, 862], [813, 862, 861], [814, 815, 863], [814, 863, 862], [815, 768, 816], [815, 816, 863], [816, 817, 865], [816, 865, 864], [817, 818, 866], [817, 866, 865], [818, 819, 867], [818, 867, 866], [819, 820, 868], [819, 868, 867], [820, 821, 869], [820, 869, 868], [821, 822, 870], [821, 870, 869], [822, 823, 871], [822, 871, 870], [823, 824, 872], [823, 872, 871], [824, 825, 873], [824, 873, 872], [825, 826, 874], [825, 874, 873], [826, 827, 875], [826, 875, 874], [827, 828, 876], [827, 876, 875], [828, 829, 877], [828, 877, 876], [829, 830, 878], [829, 878, 877], [830, 831, 879], [830, 879, 878], [831, 832, 880], [831, 880, 879], [832, 833, 881], [832, 881, 880], [833, 834, 882], [833, 882, 881], [834, 835, 883], [834, 883, 882], [835, 836, 884], [835, 884, 883], [836, 837, 885], [836, 885, 884], [837, 838, 886], [837, 886, 885], [838, 839, 887], [838, 887, 886], [839, 840, 888], [839, 888, 887], [840, 841, 889], [840, 889, 888], [841, 842, 890], [841, 890, 889], [842, 843, 891], [842, 891, 890], [843, 844, 892], [843, 892, 891], [844, 845, 893], [844, 893, 892], [845, 846, 894], [845, 894, 893], [846, 847, 895], [846, 895, 894], [847, 848, 896], [847, 896, 895], [848, 849, 897], [848, 897, 896], [849, 850, 898], [849, 898, 897], [850, 851, 899], [850, 899, 898], [851, 852, 900], [851, 900, 899], [852, 853, 901], [852, 901, 900], [853, 854, 902], [853, 902, 901], [854, 855, 903], [854, 903, 902], [855, 856, 904], [855, 904, 903], [856, 857, 905], [856, 905, 904], [857, 858, 906], [857, 906, 905], [858, 859, 907], [858, 907, 906], [859, 860, 908], [859, 908, 907], [860, 861, 909], [860, 909, 908], [861, 862, 910], [861, 910, 909], [862, 863, 911], [862, 911, 910], [863, 816, 864], [863, 864, 911], [864, 865, 913], [864, 913, 912], [865, 866, 914], [865, 914, 913], [866, 867, 915], [866, 915, 914], [867, 868, 916], [867, 916, 915], [868, 869, 917], [868, 917, 916], [869, 870, 918], [869, 918, 917], [870, 871, 919], [870, 919, 918], [871, 872, 920], [871, 920, 919], [872, 873, 921], [872, 921, 920], [873, 874, 922], [873, 922, 921], [874, 875, 923], [874, 923, 922], [875, 876, 924], [875, 924, 923], [876, 877, 925], [876, 925, 924], [877, 878, 926], [877, 926, 925], [878, 879, 927], [878, 927, 926], [879, 880, 928], [879, 928, 927], [880, 881, 929], [880, 929, 928], [881, 882, 930], [881, 930, 929], [882, 883, 931], [882, 931, 930], [883, 884, 932], [883, 932, 931], [884, 885, 933], [884, 933, 932], [885, 886, 934], [885, 934, 933], [886, 887, 935], [886, 935, 934], [887, 888, 936], [887, 936, 935], [888, 889, 937], [888, 937, 936], [889, 890, 938], [889, 938, 937], [890, 891, 939], [890, 939, 938], [891, 892, 940], [891, 940, 939], [892, 893, 941], [892, 941, 940], [893, 894, 942], [893, 942, 941], [894, 895, 943], [894, 943, 942], [895, 896, 944], [895, 944, 943], [896, 897, 945], [896, 945, 944], [897, 898, 946], [897, 946, 945], [898, 899, 947], [898, 947, 946], [899, 900, 948], [899, 948, 947], [900, 901, 949], [900, 949, 948], [901, 902, 950], [901, 950, 949], [902, 903, 951], [902, 951, 950], [903, 904, 952], [903, 952, 951], [904, 905, 953], [904, 953, 952], [905, 906, 954], [905, 954, 953], [906, 907, 955], [906, 955, 954], [907, 908, 956], [907, 956, 955], [908, 909, 957], [908, 957, 956], [909, 910, 958], [909, 958, 957], [910, 911, 959], [910, 959, 958], [911, 864, 912], [911, 912, 959], [912, 913, 961], [912, 961, 960], [913, 914, 962], [913, 962, 961], [914, 915, 963], [914, 963, 962], [915, 916, 964], [915, 964, 963], [916, 917, 965], [916, 965, 964], [917, 918, 966], [917, 966, 965], [918, 919, 967], [918, 967, 966], [919, 920, 968], [919, 968, 967], [920, 921, 969], [920, 969, 968], [921, 922, 970], [921, 970, 969], [922, 923, 971], [922, 971, 970], [923, 924, 972], [923, 972, 971], [924, 925, 973], [924, 973, 972], [925, 926, 974], [925, 974, 973], [926, 927, 975], [926, 975, 974], [927, 928, 976], [927, 976, 975], [928, 929, 977], [928, 977, 976], [929, 930, 978], [929, 978, 977], [930, 931, 979], [930, 979, 978], [931, 932, 980], [931, 980, 979], [932, 933, 981], [932, 981, 980], [933, 934, 982], [933, 982, 981], [934, 935, 983], [934, 983, 982], [935, 936, 984], [935, 984, 983], [936, 937, 985], [936, 985, 984], [937, 938, 986], [937, 986, 985], [938, 939, 987], [938, 987, 986], [939, 940, 988], [939, 988, 987], [940, 941, 989], [940, 989, 988], [941, 942, 990], [941, 990, 989], [942, 943, 991], [942, 991, 990], [943, 944, 992], [943, 992, 991], [944, 945, 993], [944, 993, 992], [945, 946, 994], [945, 994, 993], [946, 947, 995], [946, 995, 994], [947, 948, 996], [947, 996, 995], [948, 949, 997], [948, 997, 996], [949, 950, 998], [949, 998, 997], [950, 951, 999], [950, 999, 998], [951, 952, 1000], [951, 1000, 999], [952, 953, 1001], [952, 1001, 1000], [953, 954, 1002], [953, 1002, 1001], [954, 955, 1003], [954, 1003, 1002], [955, 956, 1004], [955, 1004, 1003], [956, 957, 1005], [956, 1005, 1004], [957, 958, 1006], [957, 1006, 1005], [958, 959, 1007], [958, 1007, 1006], [959, 912, 960], [959, 960, 1007]], "edges": []}}], "manifest": [{"id": "/ArbitraryGeometry/assembly/concavePlate", "type": "Polygon", "representation": "orphan surface mesh", "clipped": false, "worldTransform": [[0.9063077870366499, -0.42261826174069944, 0.0, 40.0], [0.42261826174069944, 0.9063077870366499, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence"}, {"id": "/ArbitraryGeometry/assembly/tetra", "type": "Polyhedron", "representation": "orphan surface mesh", "clipped": false, "worldTransform": [[0.9063077870366499, -0.42261826174069944, 0.0, 49.67379050591901], [0.42261826174069944, 0.9063077870366499, 0.0, 26.578520975546986], [0.0, 0.0, 1.0, 20.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 20.0], [0.0, 1.0, 0.0, 20.0], [0.0, 0.0, 1.0, 20.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence"}, {"id": "/ArbitraryGeometry/path", "type": "Path", "representation": "wire geometry", "clipped": false, "worldTransform": [[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence"}, {"id": "/ArbitraryGeometry/curve", "type": "Parabola", "representation": "wire geometry", "clipped": true, "worldTransform": [[1.0, 0.0, 0.0, -100.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, -100.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence"}, {"id": "/ArbitraryGeometry/surface", "type": "Hyperboloid", "representation": "orphan surface mesh", "clipped": true, "worldTransform": [[1.0, 0.0, 0.0, 160.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "localTransform": [[1.0, 0.0, 0.0, 160.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]], "placementSource": "standard TranslationRotationSequence"}], "selectedView": "ArbitraryGeometry::allGeometryView"}') def polyline(sketch_object, points): for a,b in zip(points, points[1:]+points[:1]): sketch_object.Line(point1=tuple(a), point2=tuple(b)) def native_part(model, name, shape): p=shape['parameters'];kind=shape['type'] part_object=model.Part(name=name, dimensionality=THREE_D, type=DEFORMABLE_BODY) if kind=='Line': part_object.WirePolyLine(points=(((0.,0.,0.),(p['length'],0.,0.)),),mergeType=IMPRINT,meshable=ON) return part_object,0 size=max([abs(float(v)) for v in p.values()]+[1.])*6 s=model.ConstrainedSketch(name=name+'_sketch',sheetSize=size) correction=0 if kind in ('RectangularCuboid','Rectangle'): s.rectangle(point1=(0.,0.),point2=(p['length'],p['width'])) elif kind in ('Triangle','RightTriangle','RightTriangularPrism'): if kind=='RightTriangularPrism':pts=[(0.,0.),(p['length'],0.),(p['length'],p['width'])] else:pts=[(-p['length']/2,0.),(p['length']/2,0.),(p['length']/2 if kind=='RightTriangle' else p['xoffset'],p['width'])] polyline(s,pts) elif kind in ('Circle','CircularDisc','RightCircularCylinder'): s.CircleByCenterPerimeter(center=(0.,0.),point1=(p['radius'],0.)) elif kind in ('Ellipse','Disc'): if abs(p['semiMajorAxis']-p['semiMinorAxis'])<1e-12: s.CircleByCenterPerimeter(center=(0.,0.),point1=(p['semiMajorAxis'],0.)) else:s.EllipseByCenterPerimeter(center=(0.,0.),axisPoint1=(p['semiMajorAxis'],0.),axisPoint2=(0.,p['semiMinorAxis'])) elif kind in ('RightCircularCone','Sphere','Torus','RectangularToroid'): s.ConstructionLine(point1=(0.,-size),point2=(0.,size)) if kind=='RightCircularCone':polyline(s,[(0.,0.),(p['radius'],0.),(0.,p['height'])]) elif kind=='Sphere': r=p['radius'];s.ArcByCenterEnds(center=(0.,0.),point1=(0.,-r),point2=(0.,r),direction=COUNTERCLOCKWISE) s.Line(point1=(0.,r),point2=(0.,-r)) elif kind=='Torus':s.CircleByCenterPerimeter(center=(p['majorRadius'],0.),point1=(p['majorRadius']+p['minorRadius'],0.)) else: r=p['revolutionRadius'];a=p['rectangleLength']/2;b=p['rectangleWidth']/2 s.rectangle(point1=(r-a,-b),point2=(r+a,b)) part_object.BaseSolidRevolve(sketch=s,angle=360.,flipRevolveDirection=OFF) correction=90 # Sketch revolve axis Y becomes the source local Z axis. del model.sketches[name+'_sketch'] return part_object,correction else:raise ValueError('Native construction not defined: '+kind) if kind in ('RectangularCuboid','RightTriangularPrism','RightCircularCylinder'): part_object.BaseSolidExtrude(sketch=s,depth=p['height']) elif kind in ('Circle','Ellipse'):part_object.BaseWire(sketch=s) else:part_object.BaseShell(sketch=s) del model.sketches[name+'_sketch'] return part_object,correction def surface_part(model,name,shape): data=shape['mesh'];obj=model.Part(name=name,dimensionality=THREE_D,type=DEFORMABLE_BODY) if not data['faces']: for a,b in data['edges']:obj.WirePolyLine(points=((tuple(data['vertices'][a]),tuple(data['vertices'][b])),),mergeType=IMPRINT,meshable=ON) else: nodes=[obj.Node(coordinates=tuple(point),label=i+1) for i,point in enumerate(data['vertices'])] for i,face in enumerate(data['faces']):obj.Element(nodes=tuple(nodes[k] for k in face),elemShape=TRI3,label=i+1) return obj,0 def rotate_matrix(assembly_object,name,matrix): # Robust matrix -> quaternion -> axis/angle, including rotations close to pi. r=matrix;trace=r[0][0]+r[1][1]+r[2][2] if trace>0: s=math.sqrt(trace+1.)*2;qw=.25*s;qx=(r[2][1]-r[1][2])/s;qy=(r[0][2]-r[2][0])/s;qz=(r[1][0]-r[0][1])/s else: i=max(range(3),key=lambda k:r[k][k]);j=(i+1)%3;k=(i+2)%3 s=math.sqrt(max(0.,1.+r[i][i]-r[j][j]-r[k][k]))*2 q=[0.,0.,0.];q[i]=.25*s;q[j]=(r[j][i]+r[i][j])/s;q[k]=(r[k][i]+r[i][k])/s qw=(r[k][j]-r[j][k])/s;qx,qy,qz=q length=math.sqrt(qx*qx+qy*qy+qz*qz) if length>1e-12: angle=math.degrees(2*math.atan2(length,qw)) assembly_object.rotate(instanceList=(name,),axisPoint=(0.,0.,0.),axisDirection=(qx/length,qy/length,qz/length),angle=angle) assembly_object.translate(instanceList=(name,),vector=tuple(r[i][3] for i in range(3))) def main(): output=tempfile.mkdtemp(prefix='sv2a_',dir=os.getcwd()) model_name=os.path.basename(output) while model_name in mdb.models:model_name+='x' model=mdb.Model(name=model_name);root=model.rootAssembly report={'model':model_name,'selected_view':DATA.get('selectedView'),'units':'mm','analysis_ready':False,'parts':DATA['manifest'],'failures':[], 'next_steps':['Review native versus orphan surface representations','Assign materials and sections; surface meshes need shell thickness','Mesh native parts; rebuild solid volume meshes where required','Define connections/contact, steps, boundary conditions, loads and outputs','Run datacheck before solving'], 'input_export':'After completing analysis setup: mdb.Job(name=job_name,model=model_name).writeInput(consistencyChecking=ON)'} for i,shape in enumerate(DATA['shapes']): name='SV2A_P%03d'%(i+1) try: if 'mesh' in shape:obj,correction=surface_part(model,name,shape) else:obj,correction=native_part(model,name,shape) instance_name=name+'-1';root.Instance(name=instance_name,part=obj,dependent=ON) if correction:root.rotate(instanceList=(instance_name,),axisPoint=(0.,0.,0.),axisDirection=(1.,0.,0.),angle=correction) rotate_matrix(root,instance_name,shape['transform']) report['parts'][i]['abaqus_part']=name except Exception as error:report['failures'].append({'id':shape['id'],'error':str(error)}) report_path=os.path.join(output,'import_report.json') with open(report_path,'w') as stream:json.dump(report,stream,indent=2) if report['failures']:raise RuntimeError('Import incomplete; no CAE file saved. Review '+report_path) root.regenerate() mdb.saveAs(pathName=os.path.join(output,'model.cae')) if 'Viewport: 1' in session.viewports: viewport=session.viewports['Viewport: 1'];viewport.setValues(displayedObject=root);viewport.view.fitView() print('SV2A model saved in '+output) print('Geometry transfer only. Complete analysis setup before writing an analysis INP.') if __name__=='__main__':main()