diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/CONNECTION_2000.py b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/CONNECTION_2000.py new file mode 100644 index 000000000..f67567568 --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/CONNECTION_2000.py @@ -0,0 +1,33 @@ +from flojoy import flojoy, DataContainer, TextBlob +from typing import Optional +import ctypes +from picosdk.ps2000 import ps2000 as ps +from picosdk.functions import assert_pico2000_ok + + +@flojoy(deps={"picosdk": "1.1"}) +def CONNECTION_2000( + default: Optional[DataContainer] = None, +) -> TextBlob: + """The CONNECTION_2000 node connects Flojoy to an available Picoscope. + + If more than one P2000 oscilloscope is available, the first one connected + to the PC will likely be chosen. If you need specific device selection, + please contact us at: https://www.flojoy.ai/contact-sales. + + Note the P2000 nodes require a device specific driver/SDK downloaded from: + https://www.picotech.com/downloads. + + Returns + ------- + TextBlob + Placeholder return currently + """ + + ps.ps2000_close_unit(ctypes.c_int16(1)) + + status = {} + status["openUnit"] = ps.ps2000_open_unit() + assert_pico2000_ok(status["openUnit"]) + + return TextBlob(text_blob=str(status["openUnit"])) diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/app.jpeg b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/app.jpeg new file mode 100644 index 000000000..da703fa6d Binary files /dev/null and b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/app.jpeg differ diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/app.json b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/app.json new file mode 100644 index 000000000..c30b51037 --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/app.json @@ -0,0 +1,383 @@ +{ + "rfInstance": { + "nodes": [ + { + "width": 192, + "height": 192, + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "type": "IO", + "data": { + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "label": "CONNECTION 2000", + "func": "CONNECTION_2000", + "type": "IO", + "ctrls": {}, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "TextBlob", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/CONNECTION_2000.py", + "selected": false + }, + "position": { + "x": 135.11925920185442, + "y": 168.7580364703365 + }, + "selected": false, + "positionAbsolute": { + "x": 135.11925920185442, + "y": 168.7580364703365 + }, + "dragging": true + }, + { + "width": 380, + "height": 293, + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "type": "VISUALIZERS", + "data": { + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "label": "LINE", + "func": "LINE", + "type": "VISUALIZERS", + "ctrls": {}, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "OrderedPair|DataFrame|Matrix|Vector", + "multiple": false, + "desc": "the DataContainer to be visualized" + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "Plotly", + "desc": "the DataContainer containing the Plotly Line visualization of the input data" + } + ], + "path": "VISUALIZERS/PLOTLY/LINE/LINE.py", + "selected": false + }, + "position": { + "x": 1078.4681532312363, + "y": 122.67623589918526 + }, + "selected": false, + "positionAbsolute": { + "x": 1078.4681532312363, + "y": 122.67623589918526 + }, + "dragging": true + }, + { + "width": 192, + "height": 192, + "id": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "type": "IO", + "data": { + "id": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "label": "EXTRACT TRACE 2000", + "func": "EXTRACT_TRACE_2000", + "type": "IO", + "ctrls": { + "channel": { + "type": "select", + "options": [ + "A", + "B" + ], + "default": "A", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "channel", + "value": "A" + }, + "coupling_type": { + "type": "select", + "options": [ + "0", + "1", + "2" + ], + "default": "1", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "coupling_type", + "value": "2" + }, + "trig_threshold": { + "type": "float", + "default": 0.1, + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "trig_threshold", + "value": 400 + }, + "trig_direction": { + "type": "select", + "options": [ + "0", + "1", + "2" + ], + "default": "0", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "trig_direction", + "value": "1" + }, + "x_samples": { + "type": "int", + "default": 1000, + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "x_samples", + "value": 1000 + } + }, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "OrderedPair", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/EXTRACT_TRACE_2000.py", + "selected": false + }, + "position": { + "x": 788.4024727731698, + "y": 171.99457076252872 + }, + "selected": false, + "positionAbsolute": { + "x": 788.4024727731698, + "y": 171.99457076252872 + }, + "dragging": true + }, + { + "width": 192, + "height": 192, + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "type": "IO", + "data": { + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "label": "FUNCTION GENERATION 2000", + "func": "FUNCTION_GENERATION_2000", + "type": "IO", + "ctrls": { + "offset_voltage": { + "type": "int", + "default": 0, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "offset_voltage", + "value": 0 + }, + "amplitude": { + "type": "int", + "default": 1000000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "amplitude", + "value": 1000000 + }, + "wave_type": { + "type": "select", + "options": [ + "0", + "1", + "2", + "3", + "4", + "5", + "6", + "7" + ], + "default": "1", + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "wave_type", + "value": "7" + }, + "start_frequency": { + "type": "int", + "default": 10000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "start_frequency", + "value": 1000 + }, + "end_frequency": { + "type": "int", + "default": 100000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "end_frequency", + "value": 100000 + }, + "sweep_increment": { + "type": "int", + "default": 1000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweep_increment", + "value": 1000 + }, + "dwell_time": { + "type": "int", + "default": 1, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "dwell_time", + "value": 1000 + }, + "sweep_type": { + "type": "select", + "options": [ + "0", + "1", + "2", + "3" + ], + "default": "0", + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweep_type", + "value": "0" + }, + "sweeps": { + "type": "int", + "default": 0, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweeps", + "value": 0 + } + }, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "TextBlob", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/FUNCTION_GENERATION_2000.py", + "selected": false + }, + "position": { + "x": 455.6566677862645, + "y": 165.9649268496604 + }, + "selected": false, + "positionAbsolute": { + "x": 455.6566677862645, + "y": 165.9649268496604 + }, + "dragging": true + } + ], + "edges": [ + { + "source": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "sourceHandle": "default", + "target": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "targetHandle": "default", + "id": "reactflow__edge-EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871default-LINE-c1ee6803-b2db-447f-92aa-bc990b57f977default" + }, + { + "source": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "sourceHandle": "default", + "target": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "targetHandle": "default", + "id": "reactflow__edge-FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090adefault-EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871default" + }, + { + "source": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "sourceHandle": "default", + "target": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "targetHandle": "default", + "id": "reactflow__edge-CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7default-FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090adefault" + } + ], + "viewport": { + "x": 1139.470292881633, + "y": 572.2854272048312, + "zoom": 1.2136444284334926 + } + }, + "textNodes": [] +} \ No newline at end of file diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/output.jpeg b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/output.jpeg new file mode 100644 index 000000000..1afd3f037 Binary files /dev/null and b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/output.jpeg differ diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/output.json b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/output.json new file mode 100644 index 000000000..0a1b717a4 --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/output.json @@ -0,0 +1,2061 @@ +[ + { + "cmd": "CONNECTION_2000", + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "result": { + "plotly_fig": null, + "text_blob": "1" + } + }, + { + "cmd": "FUNCTION_GENERATION_2000", + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "result": { + "plotly_fig": null, + "text_blob": "1" + } + }, + { + "cmd": "LINE", + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "result": { + "plotly_fig": { + "data": [ + { + "mode": "lines", + "x": [ + 0, + 2560, + 5120, + 7680, + 10240, + 12800, + 15360, + 17920, + 20480, + 23040, + 25600, + 28160, + 30720, + 33280, + 35840, + 38400, + 40960, + 43520, + 46080, + 48640, + 51200, + 53760, + 56320, + 58880, + 61440, + 64000, + 66560, + 69120, + 71680, + 74240, + 76800, + 79360, + 81920, + 84480, + 87040, + 89600, + 92160, + 94720, + 97280, + 99840, + 102400, + 104960, + 107520, + 110080, + 112640, + 115200, + 117760, + 120320, + 122880, + 125440, + 128000, + 130560, + 133120, + 135680, + 138240, + 140800, + 143360, + 145920, + 148480, + 151040, + 153600, + 156160, + 158720, + 161280, + 163840, + 166400, + 168960, + 171520, + 174080, + 176640, + 179200, + 181760, + 184320, + 186880, + 189440, + 192000, + 194560, + 197120, + 199680, + 202240, + 204800, + 207360, + 209920, + 212480, + 215040, + 217600, + 220160, + 222720, + 225280, + 227840, + 230400, + 232960, + 235520, + 238080, + 240640, + 243200, + 245760, + 248320, + 250880, + 253440, + 256000, + 258560, + 261120, + 263680, + 266240, + 268800, + 271360, + 273920, + 276480, + 279040, + 281600, + 284160, + 286720, + 289280, + 291840, + 294400, + 296960, + 299520, + 302080, + 304640, + 307200, + 309760, + 312320, + 314880, + 317440, + 320000, + 322560, + 325120, + 327680, + 330240, + 332800, + 335360, + 337920, + 340480, + 343040, + 345600, + 348160, + 350720, + 353280, + 355840, + 358400, + 360960, + 363520, + 366080, + 368640, + 371200, + 373760, + 376320, + 378880, + 381440, + 384000, + 386560, + 389120, + 391680, + 394240, + 396800, + 399360, + 401920, + 404480, + 407040, + 409600, + 412160, + 414720, + 417280, + 419840, + 422400, + 424960, + 427520, + 430080, + 432640, + 435200, + 437760, + 440320, + 442880, + 445440, + 448000, + 450560, + 453120, + 455680, + 458240, + 460800, + 463360, + 465920, + 468480, + 471040, + 473600, + 476160, + 478720, + 481280, + 483840, + 486400, + 488960, + 491520, + 494080, + 496640, + 499200, + 501760, + 504320, + 506880, + 509440, + 512000, + 514560, + 517120, + 519680, + 522240, + 524800, + 527360, + 529920, + 532480, + 535040, + 537600, + 540160, + 542720, + 545280, + 547840, + 550400, + 552960, + 555520, + 558080, + 560640, + 563200, + 565760, + 568320, + 570880, + 573440, + 576000, + 578560, + 581120, + 583680, + 586240, + 588800, + 591360, + 593920, + 596480, + 599040, + 601600, + 604160, + 606720, + 609280, + 611840, + 614400, + 616960, + 619520, + 622080, + 624640, + 627200, + 629760, + 632320, + 634880, + 637440, + 640000, + 642560, + 645120, + 647680, + 650240, + 652800, + 655360, + 657920, + 660480, + 663040, + 665600, + 668160, + 670720, + 673280, + 675840, + 678400, + 680960, + 683520, + 686080, + 688640, + 691200, + 693760, + 696320, + 698880, + 701440, + 704000, + 706560, + 709120, + 711680, + 714240, + 716800, + 719360, + 721920, + 724480, + 727040, + 729600, + 732160, + 734720, + 737280, + 739840, + 742400, + 744960, + 747520, + 750080, + 752640, + 755200, + 757760, + 760320, + 762880, + 765440, + 768000, + 770560, + 773120, + 775680, + 778240, + 780800, + 783360, + 785920, + 788480, + 791040, + 793600, + 796160, + 798720, + 801280, + 803840, + 806400, + 808960, + 811520, + 814080, + 816640, + 819200, + 821760, + 824320, + 826880, + 829440, + 832000, + 834560, + 837120, + 839680, + 842240, + 844800, + 847360, + 849920, + 852480, + 855040, + 857600, + 860160, + 862720, + 865280, + 867840, + 870400, + 872960, + 875520, + 878080, + 880640, + 883200, + 885760, + 888320, + 890880, + 893440, + 896000, + 898560, + 901120, + 903680, + 906240, + 908800, + 911360, + 913920, + 916480, + 919040, + 921600, + 924160, + 926720, + 929280, + 931840, + 934400, + 936960, + 939520, + 942080, + 944640, + 947200, + 949760, + 952320, + 954880, + 957440, + 960000, + 962560, + 965120, + 967680, + 970240, + 972800, + 975360, + 977920, + 980480, + 983040, + 985600, + 988160, + 990720, + 993280, + 995840, + 998400, + 1000960, + 1003520, + 1006080, + 1008640, + 1011200, + 1013760, + 1016320, + 1018880, + 1021440, + 1024000, + 1026560, + 1029120, + 1031680, + 1034240, + 1036800, + 1039360, + 1041920, + 1044480, + 1047040, + 1049600, + 1052160, + 1054720, + 1057280, + 1059840, + 1062400, + 1064960, + 1067520, + 1070080, + 1072640, + 1075200, + 1077760, + 1080320, + 1082880, + 1085440, + 1088000, + 1090560, + 1093120, + 1095680, + 1098240, + 1100800, + 1103360, + 1105920, + 1108480, + 1111040, + 1113600, + 1116160, + 1118720, + 1121280, + 1123840, + 1126400, + 1128960, + 1131520, + 1134080, + 1136640, + 1139200, + 1141760, + 1144320, + 1146880, + 1149440, + 1152000, + 1154560, + 1157120, + 1159680, + 1162240, + 1164800, + 1167360, + 1169920, + 1172480, + 1175040, + 1177600, + 1180160, + 1182720, + 1185280, + 1187840, + 1190400, + 1192960, + 1195520, + 1198080, + 1200640, + 1203200, + 1205760, + 1208320, + 1210880, + 1213440, + 1216000, + 1218560, + 1221120, + 1223680, + 1226240, + 1228800, + 1231360, + 1233920, + 1236480, + 1239040, + 1241600, + 1244160, + 1246720, + 1249280, + 1251840, + 1254400, + 1256960, + 1259520, + 1262080, + 1264640, + 1267200, + 1269760, + 1272320, + 1274880, + 1277440, + 1280000, + 1282560, + 1285120, + 1287680, + 1290240, + 1292800, + 1295360, + 1297920, + 1300480, + 1303040, + 1305600, + 1308160, + 1310720, + 1313280, + 1315840, + 1318400, + 1320960, + 1323520, + 1326080, + 1328640, + 1331200, + 1333760, + 1336320, + 1338880, + 1341440, + 1344000, + 1346560, + 1349120, + 1351680, + 1354240, + 1356800, + 1359360, + 1361920, + 1364480, + 1367040, + 1369600, + 1372160, + 1374720, + 1377280, + 1379840, + 1382400, + 1384960, + 1387520, + 1390080, + 1392640, + 1395200, + 1397760, + 1400320, + 1402880, + 1405440, + 1408000, + 1410560, + 1413120, + 1415680, + 1418240, + 1420800, + 1423360, + 1425920, + 1428480, + 1431040, + 1433600, + 1436160, + 1438720, + 1441280, + 1443840, + 1446400, + 1448960, + 1451520, + 1454080, + 1456640, + 1459200, + 1461760, + 1464320, + 1466880, + 1469440, + 1472000, + 1474560, + 1477120, + 1479680, + 1482240, + 1484800, + 1487360, + 1489920, + 1492480, + 1495040, + 1497600, + 1500160, + 1502720, + 1505280, + 1507840, + 1510400, + 1512960, + 1515520, + 1518080, + 1520640, + 1523200, + 1525760, + 1528320, + 1530880, + 1533440, + 1536000, + 1538560, + 1541120, + 1543680, + 1546240, + 1548800, + 1551360, + 1553920, + 1556480, + 1559040, + 1561600, + 1564160, + 1566720, + 1569280, + 1571840, + 1574400, + 1576960, + 1579520, + 1582080, + 1584640, + 1587200, + 1589760, + 1592320, + 1594880, + 1597440, + 1600000, + 1602560, + 1605120, + 1607680, + 1610240, + 1612800, + 1615360, + 1617920, + 1620480, + 1623040, + 1625600, + 1628160, + 1630720, + 1633280, + 1635840, + 1638400, + 1640960, + 1643520, + 1646080, + 1648640, + 1651200, + 1653760, + 1656320, + 1658880, + 1661440, + 1664000, + 1666560, + 1669120, + 1671680, + 1674240, + 1676800, + 1679360, + 1681920, + 1684480, + 1687040, + 1689600, + 1692160, + 1694720, + 1697280, + 1699840, + 1702400, + 1704960, + 1707520, + 1710080, + 1712640, + 1715200, + 1717760, + 1720320, + 1722880, + 1725440, + 1728000, + 1730560, + 1733120, + 1735680, + 1738240, + 1740800, + 1743360, + 1745920, + 1748480, + 1751040, + 1753600, + 1756160, + 1758720, + 1761280, + 1763840, + 1766400, + 1768960, + 1771520, + 1774080, + 1776640, + 1779200, + 1781760, + 1784320, + 1786880, + 1789440, + 1792000, + 1794560, + 1797120, + 1799680, + 1802240, + 1804800, + 1807360, + 1809920, + 1812480, + 1815040, + 1817600, + 1820160, + 1822720, + 1825280, + 1827840, + 1830400, + 1832960, + 1835520, + 1838080, + 1840640, + 1843200, + 1845760, + 1848320, + 1850880, + 1853440, + 1856000, + 1858560, + 1861120, + 1863680, + 1866240, + 1868800, + 1871360, + 1873920, + 1876480, + 1879040, + 1881600, + 1884160, + 1886720, + 1889280, + 1891840, + 1894400, + 1896960, + 1899520, + 1902080, + 1904640, + 1907200, + 1909760, + 1912320, + 1914880, + 1917440, + 1920000, + 1922560, + 1925120, + 1927680, + 1930240, + 1932800, + 1935360, + 1937920, + 1940480, + 1943040, + 1945600, + 1948160, + 1950720, + 1953280, + 1955840, + 1958400, + 1960960, + 1963520, + 1966080, + 1968640, + 1971200, + 1973760, + 1976320, + 1978880, + 1981440, + 1984000, + 1986560, + 1989120, + 1991680, + 1994240, + 1996800, + 1999360, + 2001920, + 2004480, + 2007040, + 2009600, + 2012160, + 2014720, + 2017280, + 2019840, + 2022400, + 2024960, + 2027520, + 2030080, + 2032640, + 2035200, + 2037760, + 2040320, + 2042880, + 2045440, + 2048000, + 2050560, + 2053120, + 2055680, + 2058240, + 2060800, + 2063360, + 2065920, + 2068480, + 2071040, + 2073600, + 2076160, + 2078720, + 2081280, + 2083840, + 2086400, + 2088960, + 2091520, + 2094080, + 2096640, + 2099200, + 2101760, + 2104320, + 2106880, + 2109440, + 2112000, + 2114560, + 2117120, + 2119680, + 2122240, + 2124800, + 2127360, + 2129920, + 2132480, + 2135040, + 2137600, + 2140160, + 2142720, + 2145280, + 2147840, + 2150400, + 2152960, + 2155520, + 2158080, + 2160640, + 2163200, + 2165760, + 2168320, + 2170880, + 2173440, + 2176000, + 2178560, + 2181120, + 2183680, + 2186240, + 2188800, + 2191360, + 2193920, + 2196480, + 2199040, + 2201600, + 2204160, + 2206720, + 2209280, + 2211840, + 2214400, + 2216960, + 2219520, + 2222080, + 2224640, + 2227200, + 2229760, + 2232320, + 2234880, + 2237440, + 2240000, + 2242560, + 2245120, + 2247680, + 2250240, + 2252800, + 2255360, + 2257920, + 2260480, + 2263040, + 2265600, + 2268160, + 2270720, + 2273280, + 2275840, + 2278400, + 2280960, + 2283520, + 2286080, + 2288640, + 2291200, + 2293760, + 2296320, + 2298880, + 2301440, + 2304000, + 2306560, + 2309120, + 2311680, + 2314240, + 2316800, + 2319360, + 2321920, + 2324480, + 2327040, + 2329600, + 2332160, + 2334720, + 2337280, + 2339840, + 2342400, + 2344960, + 2347520, + 2350080, + 2352640, + 2355200, + 2357760, + 2360320, + 2362880, + 2365440, + 2368000, + 2370560, + 2373120, + 2375680, + 2378240, + 2380800, + 2383360, + 2385920, + 2388480, + 2391040, + 2393600, + 2396160, + 2398720, + 2401280, + 2403840, + 2406400, + 2408960, + 2411520, + 2414080, + 2416640, + 2419200, + 2421760, + 2424320, + 2426880, + 2429440, + 2432000, + 2434560, + 2437120, + 2439680, + 2442240, + 2444800, + 2447360, + 2449920, + 2452480, + 2455040, + 2457600, + 2460160, + 2462720, + 2465280, + 2467840, + 2470400, + 2472960, + 2475520, + 2478080, + 2480640, + 2483200, + 2485760, + 2488320, + 2490880, + 2493440, + 2496000, + 2498560, + 2501120, + 2503680, + 2506240, + 2508800, + 2511360, + 2513920, + 2516480, + 2519040, + 2521600, + 2524160, + 2526720, + 2529280, + 2531840, + 2534400, + 2536960, + 2539520, + 2542080, + 2544640, + 2547200, + 2549760, + 2552320, + 2554880, + 2557440 + ], + "y": [ + 10.98666341135899, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 65.00442518387402, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -7.019257179479355, + 28.992584002197333, + 65.00442518387402, + 101.0773033845027, + 137.15018158513138, + 173.22305978576006, + 209.29593798638874, + 263.3747367778558, + 299.44761497848447, + 335.52049317911315, + 371.5933713797418, + 389.59929197058017, + 425.67217017120885, + 461.7450483718375, + 461.7450483718375, + 479.75096896267587, + 497.8179265724662, + 479.75096896267587, + 479.75096896267587, + 461.7450483718375, + 461.7450483718375, + 425.67217017120885, + 389.59929197058017, + 371.5933713797418, + 317.5145725882748, + 281.4416943876461, + 245.36881618701742, + 209.29593798638874, + 173.22305978576006, + 137.15018158513138, + 83.07138279366436, + 46.998504593035676, + 10.98666341135899, + -7.019257179479355, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 65.00442518387402, + 65.00442518387402, + 46.998504593035676, + 28.992584002197333, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -61.159092989898376, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + 28.992584002197333, + 83.07138279366436, + 101.0773033845027, + 155.2171391949217, + 191.2289803765984, + 245.36881618701742, + 281.4416943876461, + 317.5145725882748, + 353.5264137699515, + 389.59929197058017, + 407.6662495803705, + 443.7391277809992, + 461.7450483718375, + 461.7450483718375, + 497.8179265724662, + 497.8179265724662, + 479.75096896267587, + 461.7450483718375, + 461.7450483718375, + 443.7391277809992, + 425.67217017120885, + 389.59929197058017, + 353.5264137699515, + 317.5145725882748, + 281.4416943876461, + 245.36881618701742, + 173.22305978576006, + 155.2171391949217, + 101.0773033845027, + 65.00442518387402, + 28.992584002197333, + 10.98666341135899, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -97.23197119052705, + -79.16501358073671, + -79.16501358073671, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355 + ], + "type": "scatter" + } + ], + "layout": { + "autosize": true, + "margin": { + "b": 0, + "l": 0, + "r": 0, + "t": 30 + }, + "template": { + "data": { + "scatter": [ + { + "type": "scatter" + } + ] + } + }, + "title": { + "text": "LINE" + }, + "xaxis": { + "type": "-" + } + } + }, + "text_blob": null + } + } +] \ No newline at end of file diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/EXTRACT_TRACE_2000.py b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/EXTRACT_TRACE_2000.py new file mode 100644 index 000000000..21bddbcff --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/EXTRACT_TRACE_2000.py @@ -0,0 +1,135 @@ +from flojoy import flojoy, DataContainer, OrderedPair +from typing import Optional, Literal +import ctypes +from numpy import linspace +from picosdk.ps2000 import ps2000 as ps +from picosdk.functions import adc2mV, assert_pico2000_ok, mV2adc + + +@flojoy(deps={"picosdk": "1.1"}) +def EXTRACT_TRACE_2000( + channel: Literal["A", "B"] = "A", + coupling_type: Literal["0", "1", "2"] = "1", + trig_threshold: float = 300, + trig_direction: Literal["0", "1", "2"] = "1", + x_samples: int = 1000, + default: Optional[DataContainer] = None, +) -> OrderedPair: + """The EXTRACT_TRACE_2000 node extracts scope traces from the P2000. + + Note this node requires the CONNECTION_2000 node. + + Note the P2000 nodes require a device specific driver/SDK downloaded from: + https://www.picotech.com/downloads. + + Parameters + ---------- + channel: select + Select the channel to extract a trace from. + coupling_type: select + Select the coupling type (0:AC, 1:DC) + trig_threshold: float + The threshold to trigger the oscilloscope timing, in mV. + trig_direction: select + The direction (slope) to search for a trigger (1:Rising, 2:Falling). + x_samples: int + The number of samples in time (i.e. # of x axis pixels). + + Returns + ------- + OrderedPair + The trace of the oscilloscope is returned. + """ + + status = {} + device_num = ctypes.c_int16(1) + # find maximum ADC count value + maxADC = ctypes.c_int16(32767) + + # Set up channel + if channel == "A": + chan_num = 0 # 0=A, 1=B + else: + chan_num = 1 + enabled = 1 + coupling_type = int(coupling_type) + ch_range = 7 + status["setCh"] = ps.ps2000_set_channel( + device_num, chan_num, enabled, coupling_type, ch_range + ) + assert_pico2000_ok(status["setCh"]) + + # Set up single trigger + source = chan_num + # convert mV counts data to ADC + threshold = mV2adc(trig_threshold, ch_range, maxADC) + direction = int(trig_direction) # 0=RISING 1=falling + delay = 0 # ms + trigger = 1000 # ms + status["trigger"] = ps.ps2000_set_trigger( + device_num, source, int(threshold / 16), direction, delay, trigger + ) + assert_pico2000_ok(status["trigger"]) + + # Get timebase information + timebase = 8 + timeInterval = ctypes.c_int32() + timeUnits = ctypes.c_int32() + oversample = ctypes.c_int16(1) + maxSamplesReturn = ctypes.c_int32() + status["getTimebase"] = ps.ps2000_get_timebase( + device_num, + timebase, + x_samples, + ctypes.byref(timeInterval), + ctypes.byref(timeUnits), + oversample, + ctypes.byref(maxSamplesReturn), + ) + assert_pico2000_ok(status["getTimebase"]) + + # Run block capture + timeIndisposedms = ctypes.c_int32() + status["runBlock"] = ps.ps2000_run_block( + device_num, x_samples, timebase, oversample, ctypes.byref(timeIndisposedms) + ) + assert_pico2000_ok(status["runBlock"]) + + # Check for data collection to finish using ps5000aIsReady + ready = ctypes.c_int16(0) + check = ctypes.c_int16(0) + while ready.value == check.value: + status["isReady"] = ps.ps2000_ready(device_num) + ready = ctypes.c_int16(status["isReady"]) + + # Create buffers ready for data + bufferA = (ctypes.c_int16 * x_samples)() + bufferB = (ctypes.c_int16 * x_samples)() + + # Get data from scope + cmaxSamples = ctypes.c_int32(x_samples) + status["getValues"] = ps.ps2000_get_values( + device_num, + ctypes.byref(bufferA), + ctypes.byref(bufferB), + None, + None, + ctypes.byref(oversample), + cmaxSamples, + ) + assert_pico2000_ok(status["getValues"]) + + # convert ADC counts data to mV + if channel == "A": + signal = adc2mV(bufferA, ch_range, maxADC) + else: + signal = adc2mV(bufferB, ch_range, maxADC) + + # Create time data + time = linspace(0, (cmaxSamples.value - 1) * timeInterval.value, cmaxSamples.value) + + # # Stop the scope + # status["stop"] = ps.ps2000_stop(device_num) + # assert_pico2000_ok(status["stop"]) + + return OrderedPair(x=time, y=signal) diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/app.jpeg b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/app.jpeg new file mode 100644 index 000000000..da703fa6d Binary files /dev/null and b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/app.jpeg differ diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/app.json b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/app.json new file mode 100644 index 000000000..c30b51037 --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/app.json @@ -0,0 +1,383 @@ +{ + "rfInstance": { + "nodes": [ + { + "width": 192, + "height": 192, + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "type": "IO", + "data": { + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "label": "CONNECTION 2000", + "func": "CONNECTION_2000", + "type": "IO", + "ctrls": {}, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "TextBlob", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/CONNECTION_2000.py", + "selected": false + }, + "position": { + "x": 135.11925920185442, + "y": 168.7580364703365 + }, + "selected": false, + "positionAbsolute": { + "x": 135.11925920185442, + "y": 168.7580364703365 + }, + "dragging": true + }, + { + "width": 380, + "height": 293, + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "type": "VISUALIZERS", + "data": { + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "label": "LINE", + "func": "LINE", + "type": "VISUALIZERS", + "ctrls": {}, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "OrderedPair|DataFrame|Matrix|Vector", + "multiple": false, + "desc": "the DataContainer to be visualized" + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "Plotly", + "desc": "the DataContainer containing the Plotly Line visualization of the input data" + } + ], + "path": "VISUALIZERS/PLOTLY/LINE/LINE.py", + "selected": false + }, + "position": { + "x": 1078.4681532312363, + "y": 122.67623589918526 + }, + "selected": false, + "positionAbsolute": { + "x": 1078.4681532312363, + "y": 122.67623589918526 + }, + "dragging": true + }, + { + "width": 192, + "height": 192, + "id": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "type": "IO", + "data": { + "id": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "label": "EXTRACT TRACE 2000", + "func": "EXTRACT_TRACE_2000", + "type": "IO", + "ctrls": { + "channel": { + "type": "select", + "options": [ + "A", + "B" + ], + "default": "A", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "channel", + "value": "A" + }, + "coupling_type": { + "type": "select", + "options": [ + "0", + "1", + "2" + ], + "default": "1", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "coupling_type", + "value": "2" + }, + "trig_threshold": { + "type": "float", + "default": 0.1, + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "trig_threshold", + "value": 400 + }, + "trig_direction": { + "type": "select", + "options": [ + "0", + "1", + "2" + ], + "default": "0", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "trig_direction", + "value": "1" + }, + "x_samples": { + "type": "int", + "default": 1000, + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "x_samples", + "value": 1000 + } + }, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "OrderedPair", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/EXTRACT_TRACE_2000.py", + "selected": false + }, + "position": { + "x": 788.4024727731698, + "y": 171.99457076252872 + }, + "selected": false, + "positionAbsolute": { + "x": 788.4024727731698, + "y": 171.99457076252872 + }, + "dragging": true + }, + { + "width": 192, + "height": 192, + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "type": "IO", + "data": { + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "label": "FUNCTION GENERATION 2000", + "func": "FUNCTION_GENERATION_2000", + "type": "IO", + "ctrls": { + "offset_voltage": { + "type": "int", + "default": 0, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "offset_voltage", + "value": 0 + }, + "amplitude": { + "type": "int", + "default": 1000000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "amplitude", + "value": 1000000 + }, + "wave_type": { + "type": "select", + "options": [ + "0", + "1", + "2", + "3", + "4", + "5", + "6", + "7" + ], + "default": "1", + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "wave_type", + "value": "7" + }, + "start_frequency": { + "type": "int", + "default": 10000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "start_frequency", + "value": 1000 + }, + "end_frequency": { + "type": "int", + "default": 100000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "end_frequency", + "value": 100000 + }, + "sweep_increment": { + "type": "int", + "default": 1000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweep_increment", + "value": 1000 + }, + "dwell_time": { + "type": "int", + "default": 1, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "dwell_time", + "value": 1000 + }, + "sweep_type": { + "type": "select", + "options": [ + "0", + "1", + "2", + "3" + ], + "default": "0", + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweep_type", + "value": "0" + }, + "sweeps": { + "type": "int", + "default": 0, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweeps", + "value": 0 + } + }, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "TextBlob", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/FUNCTION_GENERATION_2000.py", + "selected": false + }, + "position": { + "x": 455.6566677862645, + "y": 165.9649268496604 + }, + "selected": false, + "positionAbsolute": { + "x": 455.6566677862645, + "y": 165.9649268496604 + }, + "dragging": true + } + ], + "edges": [ + { + "source": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "sourceHandle": "default", + "target": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "targetHandle": "default", + "id": "reactflow__edge-EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871default-LINE-c1ee6803-b2db-447f-92aa-bc990b57f977default" + }, + { + "source": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "sourceHandle": "default", + "target": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "targetHandle": "default", + "id": "reactflow__edge-FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090adefault-EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871default" + }, + { + "source": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "sourceHandle": "default", + "target": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "targetHandle": "default", + "id": "reactflow__edge-CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7default-FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090adefault" + } + ], + "viewport": { + "x": 1139.470292881633, + "y": 572.2854272048312, + "zoom": 1.2136444284334926 + } + }, + "textNodes": [] +} \ No newline at end of file diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/output.jpeg b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/output.jpeg new file mode 100644 index 000000000..1afd3f037 Binary files /dev/null and b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/output.jpeg differ diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/output.json b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/output.json new file mode 100644 index 000000000..0a1b717a4 --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/output.json @@ -0,0 +1,2061 @@ +[ + { + "cmd": "CONNECTION_2000", + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "result": { + "plotly_fig": null, + "text_blob": "1" + } + }, + { + "cmd": "FUNCTION_GENERATION_2000", + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "result": { + "plotly_fig": null, + "text_blob": "1" + } + }, + { + "cmd": "LINE", + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "result": { + "plotly_fig": { + "data": [ + { + "mode": "lines", + "x": [ + 0, + 2560, + 5120, + 7680, + 10240, + 12800, + 15360, + 17920, + 20480, + 23040, + 25600, + 28160, + 30720, + 33280, + 35840, + 38400, + 40960, + 43520, + 46080, + 48640, + 51200, + 53760, + 56320, + 58880, + 61440, + 64000, + 66560, + 69120, + 71680, + 74240, + 76800, + 79360, + 81920, + 84480, + 87040, + 89600, + 92160, + 94720, + 97280, + 99840, + 102400, + 104960, + 107520, + 110080, + 112640, + 115200, + 117760, + 120320, + 122880, + 125440, + 128000, + 130560, + 133120, + 135680, + 138240, + 140800, + 143360, + 145920, + 148480, + 151040, + 153600, + 156160, + 158720, + 161280, + 163840, + 166400, + 168960, + 171520, + 174080, + 176640, + 179200, + 181760, + 184320, + 186880, + 189440, + 192000, + 194560, + 197120, + 199680, + 202240, + 204800, + 207360, + 209920, + 212480, + 215040, + 217600, + 220160, + 222720, + 225280, + 227840, + 230400, + 232960, + 235520, + 238080, + 240640, + 243200, + 245760, + 248320, + 250880, + 253440, + 256000, + 258560, + 261120, + 263680, + 266240, + 268800, + 271360, + 273920, + 276480, + 279040, + 281600, + 284160, + 286720, + 289280, + 291840, + 294400, + 296960, + 299520, + 302080, + 304640, + 307200, + 309760, + 312320, + 314880, + 317440, + 320000, + 322560, + 325120, + 327680, + 330240, + 332800, + 335360, + 337920, + 340480, + 343040, + 345600, + 348160, + 350720, + 353280, + 355840, + 358400, + 360960, + 363520, + 366080, + 368640, + 371200, + 373760, + 376320, + 378880, + 381440, + 384000, + 386560, + 389120, + 391680, + 394240, + 396800, + 399360, + 401920, + 404480, + 407040, + 409600, + 412160, + 414720, + 417280, + 419840, + 422400, + 424960, + 427520, + 430080, + 432640, + 435200, + 437760, + 440320, + 442880, + 445440, + 448000, + 450560, + 453120, + 455680, + 458240, + 460800, + 463360, + 465920, + 468480, + 471040, + 473600, + 476160, + 478720, + 481280, + 483840, + 486400, + 488960, + 491520, + 494080, + 496640, + 499200, + 501760, + 504320, + 506880, + 509440, + 512000, + 514560, + 517120, + 519680, + 522240, + 524800, + 527360, + 529920, + 532480, + 535040, + 537600, + 540160, + 542720, + 545280, + 547840, + 550400, + 552960, + 555520, + 558080, + 560640, + 563200, + 565760, + 568320, + 570880, + 573440, + 576000, + 578560, + 581120, + 583680, + 586240, + 588800, + 591360, + 593920, + 596480, + 599040, + 601600, + 604160, + 606720, + 609280, + 611840, + 614400, + 616960, + 619520, + 622080, + 624640, + 627200, + 629760, + 632320, + 634880, + 637440, + 640000, + 642560, + 645120, + 647680, + 650240, + 652800, + 655360, + 657920, + 660480, + 663040, + 665600, + 668160, + 670720, + 673280, + 675840, + 678400, + 680960, + 683520, + 686080, + 688640, + 691200, + 693760, + 696320, + 698880, + 701440, + 704000, + 706560, + 709120, + 711680, + 714240, + 716800, + 719360, + 721920, + 724480, + 727040, + 729600, + 732160, + 734720, + 737280, + 739840, + 742400, + 744960, + 747520, + 750080, + 752640, + 755200, + 757760, + 760320, + 762880, + 765440, + 768000, + 770560, + 773120, + 775680, + 778240, + 780800, + 783360, + 785920, + 788480, + 791040, + 793600, + 796160, + 798720, + 801280, + 803840, + 806400, + 808960, + 811520, + 814080, + 816640, + 819200, + 821760, + 824320, + 826880, + 829440, + 832000, + 834560, + 837120, + 839680, + 842240, + 844800, + 847360, + 849920, + 852480, + 855040, + 857600, + 860160, + 862720, + 865280, + 867840, + 870400, + 872960, + 875520, + 878080, + 880640, + 883200, + 885760, + 888320, + 890880, + 893440, + 896000, + 898560, + 901120, + 903680, + 906240, + 908800, + 911360, + 913920, + 916480, + 919040, + 921600, + 924160, + 926720, + 929280, + 931840, + 934400, + 936960, + 939520, + 942080, + 944640, + 947200, + 949760, + 952320, + 954880, + 957440, + 960000, + 962560, + 965120, + 967680, + 970240, + 972800, + 975360, + 977920, + 980480, + 983040, + 985600, + 988160, + 990720, + 993280, + 995840, + 998400, + 1000960, + 1003520, + 1006080, + 1008640, + 1011200, + 1013760, + 1016320, + 1018880, + 1021440, + 1024000, + 1026560, + 1029120, + 1031680, + 1034240, + 1036800, + 1039360, + 1041920, + 1044480, + 1047040, + 1049600, + 1052160, + 1054720, + 1057280, + 1059840, + 1062400, + 1064960, + 1067520, + 1070080, + 1072640, + 1075200, + 1077760, + 1080320, + 1082880, + 1085440, + 1088000, + 1090560, + 1093120, + 1095680, + 1098240, + 1100800, + 1103360, + 1105920, + 1108480, + 1111040, + 1113600, + 1116160, + 1118720, + 1121280, + 1123840, + 1126400, + 1128960, + 1131520, + 1134080, + 1136640, + 1139200, + 1141760, + 1144320, + 1146880, + 1149440, + 1152000, + 1154560, + 1157120, + 1159680, + 1162240, + 1164800, + 1167360, + 1169920, + 1172480, + 1175040, + 1177600, + 1180160, + 1182720, + 1185280, + 1187840, + 1190400, + 1192960, + 1195520, + 1198080, + 1200640, + 1203200, + 1205760, + 1208320, + 1210880, + 1213440, + 1216000, + 1218560, + 1221120, + 1223680, + 1226240, + 1228800, + 1231360, + 1233920, + 1236480, + 1239040, + 1241600, + 1244160, + 1246720, + 1249280, + 1251840, + 1254400, + 1256960, + 1259520, + 1262080, + 1264640, + 1267200, + 1269760, + 1272320, + 1274880, + 1277440, + 1280000, + 1282560, + 1285120, + 1287680, + 1290240, + 1292800, + 1295360, + 1297920, + 1300480, + 1303040, + 1305600, + 1308160, + 1310720, + 1313280, + 1315840, + 1318400, + 1320960, + 1323520, + 1326080, + 1328640, + 1331200, + 1333760, + 1336320, + 1338880, + 1341440, + 1344000, + 1346560, + 1349120, + 1351680, + 1354240, + 1356800, + 1359360, + 1361920, + 1364480, + 1367040, + 1369600, + 1372160, + 1374720, + 1377280, + 1379840, + 1382400, + 1384960, + 1387520, + 1390080, + 1392640, + 1395200, + 1397760, + 1400320, + 1402880, + 1405440, + 1408000, + 1410560, + 1413120, + 1415680, + 1418240, + 1420800, + 1423360, + 1425920, + 1428480, + 1431040, + 1433600, + 1436160, + 1438720, + 1441280, + 1443840, + 1446400, + 1448960, + 1451520, + 1454080, + 1456640, + 1459200, + 1461760, + 1464320, + 1466880, + 1469440, + 1472000, + 1474560, + 1477120, + 1479680, + 1482240, + 1484800, + 1487360, + 1489920, + 1492480, + 1495040, + 1497600, + 1500160, + 1502720, + 1505280, + 1507840, + 1510400, + 1512960, + 1515520, + 1518080, + 1520640, + 1523200, + 1525760, + 1528320, + 1530880, + 1533440, + 1536000, + 1538560, + 1541120, + 1543680, + 1546240, + 1548800, + 1551360, + 1553920, + 1556480, + 1559040, + 1561600, + 1564160, + 1566720, + 1569280, + 1571840, + 1574400, + 1576960, + 1579520, + 1582080, + 1584640, + 1587200, + 1589760, + 1592320, + 1594880, + 1597440, + 1600000, + 1602560, + 1605120, + 1607680, + 1610240, + 1612800, + 1615360, + 1617920, + 1620480, + 1623040, + 1625600, + 1628160, + 1630720, + 1633280, + 1635840, + 1638400, + 1640960, + 1643520, + 1646080, + 1648640, + 1651200, + 1653760, + 1656320, + 1658880, + 1661440, + 1664000, + 1666560, + 1669120, + 1671680, + 1674240, + 1676800, + 1679360, + 1681920, + 1684480, + 1687040, + 1689600, + 1692160, + 1694720, + 1697280, + 1699840, + 1702400, + 1704960, + 1707520, + 1710080, + 1712640, + 1715200, + 1717760, + 1720320, + 1722880, + 1725440, + 1728000, + 1730560, + 1733120, + 1735680, + 1738240, + 1740800, + 1743360, + 1745920, + 1748480, + 1751040, + 1753600, + 1756160, + 1758720, + 1761280, + 1763840, + 1766400, + 1768960, + 1771520, + 1774080, + 1776640, + 1779200, + 1781760, + 1784320, + 1786880, + 1789440, + 1792000, + 1794560, + 1797120, + 1799680, + 1802240, + 1804800, + 1807360, + 1809920, + 1812480, + 1815040, + 1817600, + 1820160, + 1822720, + 1825280, + 1827840, + 1830400, + 1832960, + 1835520, + 1838080, + 1840640, + 1843200, + 1845760, + 1848320, + 1850880, + 1853440, + 1856000, + 1858560, + 1861120, + 1863680, + 1866240, + 1868800, + 1871360, + 1873920, + 1876480, + 1879040, + 1881600, + 1884160, + 1886720, + 1889280, + 1891840, + 1894400, + 1896960, + 1899520, + 1902080, + 1904640, + 1907200, + 1909760, + 1912320, + 1914880, + 1917440, + 1920000, + 1922560, + 1925120, + 1927680, + 1930240, + 1932800, + 1935360, + 1937920, + 1940480, + 1943040, + 1945600, + 1948160, + 1950720, + 1953280, + 1955840, + 1958400, + 1960960, + 1963520, + 1966080, + 1968640, + 1971200, + 1973760, + 1976320, + 1978880, + 1981440, + 1984000, + 1986560, + 1989120, + 1991680, + 1994240, + 1996800, + 1999360, + 2001920, + 2004480, + 2007040, + 2009600, + 2012160, + 2014720, + 2017280, + 2019840, + 2022400, + 2024960, + 2027520, + 2030080, + 2032640, + 2035200, + 2037760, + 2040320, + 2042880, + 2045440, + 2048000, + 2050560, + 2053120, + 2055680, + 2058240, + 2060800, + 2063360, + 2065920, + 2068480, + 2071040, + 2073600, + 2076160, + 2078720, + 2081280, + 2083840, + 2086400, + 2088960, + 2091520, + 2094080, + 2096640, + 2099200, + 2101760, + 2104320, + 2106880, + 2109440, + 2112000, + 2114560, + 2117120, + 2119680, + 2122240, + 2124800, + 2127360, + 2129920, + 2132480, + 2135040, + 2137600, + 2140160, + 2142720, + 2145280, + 2147840, + 2150400, + 2152960, + 2155520, + 2158080, + 2160640, + 2163200, + 2165760, + 2168320, + 2170880, + 2173440, + 2176000, + 2178560, + 2181120, + 2183680, + 2186240, + 2188800, + 2191360, + 2193920, + 2196480, + 2199040, + 2201600, + 2204160, + 2206720, + 2209280, + 2211840, + 2214400, + 2216960, + 2219520, + 2222080, + 2224640, + 2227200, + 2229760, + 2232320, + 2234880, + 2237440, + 2240000, + 2242560, + 2245120, + 2247680, + 2250240, + 2252800, + 2255360, + 2257920, + 2260480, + 2263040, + 2265600, + 2268160, + 2270720, + 2273280, + 2275840, + 2278400, + 2280960, + 2283520, + 2286080, + 2288640, + 2291200, + 2293760, + 2296320, + 2298880, + 2301440, + 2304000, + 2306560, + 2309120, + 2311680, + 2314240, + 2316800, + 2319360, + 2321920, + 2324480, + 2327040, + 2329600, + 2332160, + 2334720, + 2337280, + 2339840, + 2342400, + 2344960, + 2347520, + 2350080, + 2352640, + 2355200, + 2357760, + 2360320, + 2362880, + 2365440, + 2368000, + 2370560, + 2373120, + 2375680, + 2378240, + 2380800, + 2383360, + 2385920, + 2388480, + 2391040, + 2393600, + 2396160, + 2398720, + 2401280, + 2403840, + 2406400, + 2408960, + 2411520, + 2414080, + 2416640, + 2419200, + 2421760, + 2424320, + 2426880, + 2429440, + 2432000, + 2434560, + 2437120, + 2439680, + 2442240, + 2444800, + 2447360, + 2449920, + 2452480, + 2455040, + 2457600, + 2460160, + 2462720, + 2465280, + 2467840, + 2470400, + 2472960, + 2475520, + 2478080, + 2480640, + 2483200, + 2485760, + 2488320, + 2490880, + 2493440, + 2496000, + 2498560, + 2501120, + 2503680, + 2506240, + 2508800, + 2511360, + 2513920, + 2516480, + 2519040, + 2521600, + 2524160, + 2526720, + 2529280, + 2531840, + 2534400, + 2536960, + 2539520, + 2542080, + 2544640, + 2547200, + 2549760, + 2552320, + 2554880, + 2557440 + ], + "y": [ + 10.98666341135899, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 65.00442518387402, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -7.019257179479355, + 28.992584002197333, + 65.00442518387402, + 101.0773033845027, + 137.15018158513138, + 173.22305978576006, + 209.29593798638874, + 263.3747367778558, + 299.44761497848447, + 335.52049317911315, + 371.5933713797418, + 389.59929197058017, + 425.67217017120885, + 461.7450483718375, + 461.7450483718375, + 479.75096896267587, + 497.8179265724662, + 479.75096896267587, + 479.75096896267587, + 461.7450483718375, + 461.7450483718375, + 425.67217017120885, + 389.59929197058017, + 371.5933713797418, + 317.5145725882748, + 281.4416943876461, + 245.36881618701742, + 209.29593798638874, + 173.22305978576006, + 137.15018158513138, + 83.07138279366436, + 46.998504593035676, + 10.98666341135899, + -7.019257179479355, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 65.00442518387402, + 65.00442518387402, + 46.998504593035676, + 28.992584002197333, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -61.159092989898376, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + 28.992584002197333, + 83.07138279366436, + 101.0773033845027, + 155.2171391949217, + 191.2289803765984, + 245.36881618701742, + 281.4416943876461, + 317.5145725882748, + 353.5264137699515, + 389.59929197058017, + 407.6662495803705, + 443.7391277809992, + 461.7450483718375, + 461.7450483718375, + 497.8179265724662, + 497.8179265724662, + 479.75096896267587, + 461.7450483718375, + 461.7450483718375, + 443.7391277809992, + 425.67217017120885, + 389.59929197058017, + 353.5264137699515, + 317.5145725882748, + 281.4416943876461, + 245.36881618701742, + 173.22305978576006, + 155.2171391949217, + 101.0773033845027, + 65.00442518387402, + 28.992584002197333, + 10.98666341135899, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -97.23197119052705, + -79.16501358073671, + -79.16501358073671, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355 + ], + "type": "scatter" + } + ], + "layout": { + "autosize": true, + "margin": { + "b": 0, + "l": 0, + "r": 0, + "t": 30 + }, + "template": { + "data": { + "scatter": [ + { + "type": "scatter" + } + ] + } + }, + "title": { + "text": "LINE" + }, + "xaxis": { + "type": "-" + } + } + }, + "text_blob": null + } + } +] \ No newline at end of file diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/FUNCTION_GENERATION_2000.py b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/FUNCTION_GENERATION_2000.py new file mode 100644 index 000000000..ef29baf7c --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/FUNCTION_GENERATION_2000.py @@ -0,0 +1,75 @@ +from flojoy import flojoy, DataContainer, TextBlob +from typing import Optional, Literal +import ctypes +from picosdk.ps2000 import ps2000 as ps +from picosdk.functions import assert_pico2000_ok + + +@flojoy(deps={"picosdk": "1.1"}) +def FUNCTION_GENERATION_2000( + offset_voltage: int = 0, + amplitude: int = 1e6, + wave_type: Literal["0", "1", "2", "3", "4", "5", "6", "7"] = "1", + start_frequency: int = 1e4, + end_frequency: int = 1e5, + sweep_increment: int = 1e3, + dwell_time: int = 1, + sweep_type: Literal["0", "1", "2", "3"] = "0", + sweeps: int = 0, + default: Optional[DataContainer] = None, +) -> TextBlob: + """The FUNCTION_GENERATION_2000 node controls wavefunction generation. + + Note this node requires the CONNECTION_2000 node. + + Note the P2000 nodes require a device specific driver/SDK downloaded from: + https://www.picotech.com/downloads. + + Parameters + ---------- + offset_voltage: int + The offset (vertical) voltage, in uV (microvolts). + amplitude: int + The peak-to-peak amplitude, in uV (microvolts). + wave_type: select + The type of waveform to generate (e.g. 0 is a sine) + start_frequency: int + The static or starting frequency, in Hz. + end_frequency: int + The ending frequency if sweeping is activated, in Hz. + sweep_increment: int + The increment to increase frequency during sweeping, in Hz + dwell_time: int = 1, + The time to dwell at a frequency during sweeping, in ms. + sweep_type: Literal["0", "1", "2", "3"] = "0", + The type of sweeping. 0 deactivates sweeping. + sweeps: int = 0, + The number of sweeps. + + Returns + ------- + TextBlob + Placeholder return currently + """ + + device_num = ctypes.c_int16(1) + + wave_type = ctypes.c_int32(int(wave_type)) + sweep_type = ctypes.c_int32(int(sweep_type)) + + res = ps.ps2000_set_sig_gen_built_in( + device_num, + offset_voltage, + amplitude, + wave_type, + start_frequency, + end_frequency, + sweep_increment, + dwell_time, + int(sweep_type), + sweeps, + ) + + assert_pico2000_ok(res) + + return TextBlob(text_blob=str(1)) diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/app.jpeg b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/app.jpeg new file mode 100644 index 000000000..da703fa6d Binary files /dev/null and b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/app.jpeg differ diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/app.json b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/app.json new file mode 100644 index 000000000..c30b51037 --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/app.json @@ -0,0 +1,383 @@ +{ + "rfInstance": { + "nodes": [ + { + "width": 192, + "height": 192, + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "type": "IO", + "data": { + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "label": "CONNECTION 2000", + "func": "CONNECTION_2000", + "type": "IO", + "ctrls": {}, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "TextBlob", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/CONNECTION_2000/CONNECTION_2000.py", + "selected": false + }, + "position": { + "x": 135.11925920185442, + "y": 168.7580364703365 + }, + "selected": false, + "positionAbsolute": { + "x": 135.11925920185442, + "y": 168.7580364703365 + }, + "dragging": true + }, + { + "width": 380, + "height": 293, + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "type": "VISUALIZERS", + "data": { + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "label": "LINE", + "func": "LINE", + "type": "VISUALIZERS", + "ctrls": {}, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "OrderedPair|DataFrame|Matrix|Vector", + "multiple": false, + "desc": "the DataContainer to be visualized" + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "Plotly", + "desc": "the DataContainer containing the Plotly Line visualization of the input data" + } + ], + "path": "VISUALIZERS/PLOTLY/LINE/LINE.py", + "selected": false + }, + "position": { + "x": 1078.4681532312363, + "y": 122.67623589918526 + }, + "selected": false, + "positionAbsolute": { + "x": 1078.4681532312363, + "y": 122.67623589918526 + }, + "dragging": true + }, + { + "width": 192, + "height": 192, + "id": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "type": "IO", + "data": { + "id": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "label": "EXTRACT TRACE 2000", + "func": "EXTRACT_TRACE_2000", + "type": "IO", + "ctrls": { + "channel": { + "type": "select", + "options": [ + "A", + "B" + ], + "default": "A", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "channel", + "value": "A" + }, + "coupling_type": { + "type": "select", + "options": [ + "0", + "1", + "2" + ], + "default": "1", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "coupling_type", + "value": "2" + }, + "trig_threshold": { + "type": "float", + "default": 0.1, + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "trig_threshold", + "value": 400 + }, + "trig_direction": { + "type": "select", + "options": [ + "0", + "1", + "2" + ], + "default": "0", + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "trig_direction", + "value": "1" + }, + "x_samples": { + "type": "int", + "default": 1000, + "desc": null, + "overload": null, + "functionName": "EXTRACT_TRACE_2000", + "param": "x_samples", + "value": 1000 + } + }, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "OrderedPair", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/EXTRACT_TRACE_2000/EXTRACT_TRACE_2000.py", + "selected": false + }, + "position": { + "x": 788.4024727731698, + "y": 171.99457076252872 + }, + "selected": false, + "positionAbsolute": { + "x": 788.4024727731698, + "y": 171.99457076252872 + }, + "dragging": true + }, + { + "width": 192, + "height": 192, + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "type": "IO", + "data": { + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "label": "FUNCTION GENERATION 2000", + "func": "FUNCTION_GENERATION_2000", + "type": "IO", + "ctrls": { + "offset_voltage": { + "type": "int", + "default": 0, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "offset_voltage", + "value": 0 + }, + "amplitude": { + "type": "int", + "default": 1000000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "amplitude", + "value": 1000000 + }, + "wave_type": { + "type": "select", + "options": [ + "0", + "1", + "2", + "3", + "4", + "5", + "6", + "7" + ], + "default": "1", + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "wave_type", + "value": "7" + }, + "start_frequency": { + "type": "int", + "default": 10000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "start_frequency", + "value": 1000 + }, + "end_frequency": { + "type": "int", + "default": 100000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "end_frequency", + "value": 100000 + }, + "sweep_increment": { + "type": "int", + "default": 1000, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweep_increment", + "value": 1000 + }, + "dwell_time": { + "type": "int", + "default": 1, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "dwell_time", + "value": 1000 + }, + "sweep_type": { + "type": "select", + "options": [ + "0", + "1", + "2", + "3" + ], + "default": "0", + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweep_type", + "value": "0" + }, + "sweeps": { + "type": "int", + "default": 0, + "desc": null, + "overload": null, + "functionName": "FUNCTION_GENERATION_2000", + "param": "sweeps", + "value": 0 + } + }, + "initCtrls": {}, + "inputs": [ + { + "name": "default", + "id": "default", + "type": "Any", + "multiple": false, + "desc": null + } + ], + "outputs": [ + { + "name": "default", + "id": "default", + "type": "TextBlob", + "desc": "OrderedPair: The trace of the oscilloscope is returned." + } + ], + "pip_dependencies": [ + { + "name": "picosdk", + "v": "1.1" + } + ], + "path": "IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/FUNCTION_GENERATION_2000.py", + "selected": false + }, + "position": { + "x": 455.6566677862645, + "y": 165.9649268496604 + }, + "selected": false, + "positionAbsolute": { + "x": 455.6566677862645, + "y": 165.9649268496604 + }, + "dragging": true + } + ], + "edges": [ + { + "source": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "sourceHandle": "default", + "target": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "targetHandle": "default", + "id": "reactflow__edge-EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871default-LINE-c1ee6803-b2db-447f-92aa-bc990b57f977default" + }, + { + "source": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "sourceHandle": "default", + "target": "EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871", + "targetHandle": "default", + "id": "reactflow__edge-FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090adefault-EXTRACT_TRACE_2000-6df126c3-f82c-400e-9ba5-70e2e2529871default" + }, + { + "source": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "sourceHandle": "default", + "target": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "targetHandle": "default", + "id": "reactflow__edge-CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7default-FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090adefault" + } + ], + "viewport": { + "x": 1139.470292881633, + "y": 572.2854272048312, + "zoom": 1.2136444284334926 + } + }, + "textNodes": [] +} \ No newline at end of file diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/output.jpeg b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/output.jpeg new file mode 100644 index 000000000..1afd3f037 Binary files /dev/null and b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/output.jpeg differ diff --git a/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/output.json b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/output.json new file mode 100644 index 000000000..0a1b717a4 --- /dev/null +++ b/IO/INSTRUMENTS/OSCILLOSCOPES/PICO/PICO2000/FUNCTION_GENERATION_2000/output.json @@ -0,0 +1,2061 @@ +[ + { + "cmd": "CONNECTION_2000", + "id": "CONNECTION_2000-8a729079-b42a-41b0-b0c9-218b956f8db7", + "result": { + "plotly_fig": null, + "text_blob": "1" + } + }, + { + "cmd": "FUNCTION_GENERATION_2000", + "id": "FUNCTION_GENERATION_2000-6e34d2b5-7245-49f9-a2a0-c7f75385090a", + "result": { + "plotly_fig": null, + "text_blob": "1" + } + }, + { + "cmd": "LINE", + "id": "LINE-c1ee6803-b2db-447f-92aa-bc990b57f977", + "result": { + "plotly_fig": { + "data": [ + { + "mode": "lines", + "x": [ + 0, + 2560, + 5120, + 7680, + 10240, + 12800, + 15360, + 17920, + 20480, + 23040, + 25600, + 28160, + 30720, + 33280, + 35840, + 38400, + 40960, + 43520, + 46080, + 48640, + 51200, + 53760, + 56320, + 58880, + 61440, + 64000, + 66560, + 69120, + 71680, + 74240, + 76800, + 79360, + 81920, + 84480, + 87040, + 89600, + 92160, + 94720, + 97280, + 99840, + 102400, + 104960, + 107520, + 110080, + 112640, + 115200, + 117760, + 120320, + 122880, + 125440, + 128000, + 130560, + 133120, + 135680, + 138240, + 140800, + 143360, + 145920, + 148480, + 151040, + 153600, + 156160, + 158720, + 161280, + 163840, + 166400, + 168960, + 171520, + 174080, + 176640, + 179200, + 181760, + 184320, + 186880, + 189440, + 192000, + 194560, + 197120, + 199680, + 202240, + 204800, + 207360, + 209920, + 212480, + 215040, + 217600, + 220160, + 222720, + 225280, + 227840, + 230400, + 232960, + 235520, + 238080, + 240640, + 243200, + 245760, + 248320, + 250880, + 253440, + 256000, + 258560, + 261120, + 263680, + 266240, + 268800, + 271360, + 273920, + 276480, + 279040, + 281600, + 284160, + 286720, + 289280, + 291840, + 294400, + 296960, + 299520, + 302080, + 304640, + 307200, + 309760, + 312320, + 314880, + 317440, + 320000, + 322560, + 325120, + 327680, + 330240, + 332800, + 335360, + 337920, + 340480, + 343040, + 345600, + 348160, + 350720, + 353280, + 355840, + 358400, + 360960, + 363520, + 366080, + 368640, + 371200, + 373760, + 376320, + 378880, + 381440, + 384000, + 386560, + 389120, + 391680, + 394240, + 396800, + 399360, + 401920, + 404480, + 407040, + 409600, + 412160, + 414720, + 417280, + 419840, + 422400, + 424960, + 427520, + 430080, + 432640, + 435200, + 437760, + 440320, + 442880, + 445440, + 448000, + 450560, + 453120, + 455680, + 458240, + 460800, + 463360, + 465920, + 468480, + 471040, + 473600, + 476160, + 478720, + 481280, + 483840, + 486400, + 488960, + 491520, + 494080, + 496640, + 499200, + 501760, + 504320, + 506880, + 509440, + 512000, + 514560, + 517120, + 519680, + 522240, + 524800, + 527360, + 529920, + 532480, + 535040, + 537600, + 540160, + 542720, + 545280, + 547840, + 550400, + 552960, + 555520, + 558080, + 560640, + 563200, + 565760, + 568320, + 570880, + 573440, + 576000, + 578560, + 581120, + 583680, + 586240, + 588800, + 591360, + 593920, + 596480, + 599040, + 601600, + 604160, + 606720, + 609280, + 611840, + 614400, + 616960, + 619520, + 622080, + 624640, + 627200, + 629760, + 632320, + 634880, + 637440, + 640000, + 642560, + 645120, + 647680, + 650240, + 652800, + 655360, + 657920, + 660480, + 663040, + 665600, + 668160, + 670720, + 673280, + 675840, + 678400, + 680960, + 683520, + 686080, + 688640, + 691200, + 693760, + 696320, + 698880, + 701440, + 704000, + 706560, + 709120, + 711680, + 714240, + 716800, + 719360, + 721920, + 724480, + 727040, + 729600, + 732160, + 734720, + 737280, + 739840, + 742400, + 744960, + 747520, + 750080, + 752640, + 755200, + 757760, + 760320, + 762880, + 765440, + 768000, + 770560, + 773120, + 775680, + 778240, + 780800, + 783360, + 785920, + 788480, + 791040, + 793600, + 796160, + 798720, + 801280, + 803840, + 806400, + 808960, + 811520, + 814080, + 816640, + 819200, + 821760, + 824320, + 826880, + 829440, + 832000, + 834560, + 837120, + 839680, + 842240, + 844800, + 847360, + 849920, + 852480, + 855040, + 857600, + 860160, + 862720, + 865280, + 867840, + 870400, + 872960, + 875520, + 878080, + 880640, + 883200, + 885760, + 888320, + 890880, + 893440, + 896000, + 898560, + 901120, + 903680, + 906240, + 908800, + 911360, + 913920, + 916480, + 919040, + 921600, + 924160, + 926720, + 929280, + 931840, + 934400, + 936960, + 939520, + 942080, + 944640, + 947200, + 949760, + 952320, + 954880, + 957440, + 960000, + 962560, + 965120, + 967680, + 970240, + 972800, + 975360, + 977920, + 980480, + 983040, + 985600, + 988160, + 990720, + 993280, + 995840, + 998400, + 1000960, + 1003520, + 1006080, + 1008640, + 1011200, + 1013760, + 1016320, + 1018880, + 1021440, + 1024000, + 1026560, + 1029120, + 1031680, + 1034240, + 1036800, + 1039360, + 1041920, + 1044480, + 1047040, + 1049600, + 1052160, + 1054720, + 1057280, + 1059840, + 1062400, + 1064960, + 1067520, + 1070080, + 1072640, + 1075200, + 1077760, + 1080320, + 1082880, + 1085440, + 1088000, + 1090560, + 1093120, + 1095680, + 1098240, + 1100800, + 1103360, + 1105920, + 1108480, + 1111040, + 1113600, + 1116160, + 1118720, + 1121280, + 1123840, + 1126400, + 1128960, + 1131520, + 1134080, + 1136640, + 1139200, + 1141760, + 1144320, + 1146880, + 1149440, + 1152000, + 1154560, + 1157120, + 1159680, + 1162240, + 1164800, + 1167360, + 1169920, + 1172480, + 1175040, + 1177600, + 1180160, + 1182720, + 1185280, + 1187840, + 1190400, + 1192960, + 1195520, + 1198080, + 1200640, + 1203200, + 1205760, + 1208320, + 1210880, + 1213440, + 1216000, + 1218560, + 1221120, + 1223680, + 1226240, + 1228800, + 1231360, + 1233920, + 1236480, + 1239040, + 1241600, + 1244160, + 1246720, + 1249280, + 1251840, + 1254400, + 1256960, + 1259520, + 1262080, + 1264640, + 1267200, + 1269760, + 1272320, + 1274880, + 1277440, + 1280000, + 1282560, + 1285120, + 1287680, + 1290240, + 1292800, + 1295360, + 1297920, + 1300480, + 1303040, + 1305600, + 1308160, + 1310720, + 1313280, + 1315840, + 1318400, + 1320960, + 1323520, + 1326080, + 1328640, + 1331200, + 1333760, + 1336320, + 1338880, + 1341440, + 1344000, + 1346560, + 1349120, + 1351680, + 1354240, + 1356800, + 1359360, + 1361920, + 1364480, + 1367040, + 1369600, + 1372160, + 1374720, + 1377280, + 1379840, + 1382400, + 1384960, + 1387520, + 1390080, + 1392640, + 1395200, + 1397760, + 1400320, + 1402880, + 1405440, + 1408000, + 1410560, + 1413120, + 1415680, + 1418240, + 1420800, + 1423360, + 1425920, + 1428480, + 1431040, + 1433600, + 1436160, + 1438720, + 1441280, + 1443840, + 1446400, + 1448960, + 1451520, + 1454080, + 1456640, + 1459200, + 1461760, + 1464320, + 1466880, + 1469440, + 1472000, + 1474560, + 1477120, + 1479680, + 1482240, + 1484800, + 1487360, + 1489920, + 1492480, + 1495040, + 1497600, + 1500160, + 1502720, + 1505280, + 1507840, + 1510400, + 1512960, + 1515520, + 1518080, + 1520640, + 1523200, + 1525760, + 1528320, + 1530880, + 1533440, + 1536000, + 1538560, + 1541120, + 1543680, + 1546240, + 1548800, + 1551360, + 1553920, + 1556480, + 1559040, + 1561600, + 1564160, + 1566720, + 1569280, + 1571840, + 1574400, + 1576960, + 1579520, + 1582080, + 1584640, + 1587200, + 1589760, + 1592320, + 1594880, + 1597440, + 1600000, + 1602560, + 1605120, + 1607680, + 1610240, + 1612800, + 1615360, + 1617920, + 1620480, + 1623040, + 1625600, + 1628160, + 1630720, + 1633280, + 1635840, + 1638400, + 1640960, + 1643520, + 1646080, + 1648640, + 1651200, + 1653760, + 1656320, + 1658880, + 1661440, + 1664000, + 1666560, + 1669120, + 1671680, + 1674240, + 1676800, + 1679360, + 1681920, + 1684480, + 1687040, + 1689600, + 1692160, + 1694720, + 1697280, + 1699840, + 1702400, + 1704960, + 1707520, + 1710080, + 1712640, + 1715200, + 1717760, + 1720320, + 1722880, + 1725440, + 1728000, + 1730560, + 1733120, + 1735680, + 1738240, + 1740800, + 1743360, + 1745920, + 1748480, + 1751040, + 1753600, + 1756160, + 1758720, + 1761280, + 1763840, + 1766400, + 1768960, + 1771520, + 1774080, + 1776640, + 1779200, + 1781760, + 1784320, + 1786880, + 1789440, + 1792000, + 1794560, + 1797120, + 1799680, + 1802240, + 1804800, + 1807360, + 1809920, + 1812480, + 1815040, + 1817600, + 1820160, + 1822720, + 1825280, + 1827840, + 1830400, + 1832960, + 1835520, + 1838080, + 1840640, + 1843200, + 1845760, + 1848320, + 1850880, + 1853440, + 1856000, + 1858560, + 1861120, + 1863680, + 1866240, + 1868800, + 1871360, + 1873920, + 1876480, + 1879040, + 1881600, + 1884160, + 1886720, + 1889280, + 1891840, + 1894400, + 1896960, + 1899520, + 1902080, + 1904640, + 1907200, + 1909760, + 1912320, + 1914880, + 1917440, + 1920000, + 1922560, + 1925120, + 1927680, + 1930240, + 1932800, + 1935360, + 1937920, + 1940480, + 1943040, + 1945600, + 1948160, + 1950720, + 1953280, + 1955840, + 1958400, + 1960960, + 1963520, + 1966080, + 1968640, + 1971200, + 1973760, + 1976320, + 1978880, + 1981440, + 1984000, + 1986560, + 1989120, + 1991680, + 1994240, + 1996800, + 1999360, + 2001920, + 2004480, + 2007040, + 2009600, + 2012160, + 2014720, + 2017280, + 2019840, + 2022400, + 2024960, + 2027520, + 2030080, + 2032640, + 2035200, + 2037760, + 2040320, + 2042880, + 2045440, + 2048000, + 2050560, + 2053120, + 2055680, + 2058240, + 2060800, + 2063360, + 2065920, + 2068480, + 2071040, + 2073600, + 2076160, + 2078720, + 2081280, + 2083840, + 2086400, + 2088960, + 2091520, + 2094080, + 2096640, + 2099200, + 2101760, + 2104320, + 2106880, + 2109440, + 2112000, + 2114560, + 2117120, + 2119680, + 2122240, + 2124800, + 2127360, + 2129920, + 2132480, + 2135040, + 2137600, + 2140160, + 2142720, + 2145280, + 2147840, + 2150400, + 2152960, + 2155520, + 2158080, + 2160640, + 2163200, + 2165760, + 2168320, + 2170880, + 2173440, + 2176000, + 2178560, + 2181120, + 2183680, + 2186240, + 2188800, + 2191360, + 2193920, + 2196480, + 2199040, + 2201600, + 2204160, + 2206720, + 2209280, + 2211840, + 2214400, + 2216960, + 2219520, + 2222080, + 2224640, + 2227200, + 2229760, + 2232320, + 2234880, + 2237440, + 2240000, + 2242560, + 2245120, + 2247680, + 2250240, + 2252800, + 2255360, + 2257920, + 2260480, + 2263040, + 2265600, + 2268160, + 2270720, + 2273280, + 2275840, + 2278400, + 2280960, + 2283520, + 2286080, + 2288640, + 2291200, + 2293760, + 2296320, + 2298880, + 2301440, + 2304000, + 2306560, + 2309120, + 2311680, + 2314240, + 2316800, + 2319360, + 2321920, + 2324480, + 2327040, + 2329600, + 2332160, + 2334720, + 2337280, + 2339840, + 2342400, + 2344960, + 2347520, + 2350080, + 2352640, + 2355200, + 2357760, + 2360320, + 2362880, + 2365440, + 2368000, + 2370560, + 2373120, + 2375680, + 2378240, + 2380800, + 2383360, + 2385920, + 2388480, + 2391040, + 2393600, + 2396160, + 2398720, + 2401280, + 2403840, + 2406400, + 2408960, + 2411520, + 2414080, + 2416640, + 2419200, + 2421760, + 2424320, + 2426880, + 2429440, + 2432000, + 2434560, + 2437120, + 2439680, + 2442240, + 2444800, + 2447360, + 2449920, + 2452480, + 2455040, + 2457600, + 2460160, + 2462720, + 2465280, + 2467840, + 2470400, + 2472960, + 2475520, + 2478080, + 2480640, + 2483200, + 2485760, + 2488320, + 2490880, + 2493440, + 2496000, + 2498560, + 2501120, + 2503680, + 2506240, + 2508800, + 2511360, + 2513920, + 2516480, + 2519040, + 2521600, + 2524160, + 2526720, + 2529280, + 2531840, + 2534400, + 2536960, + 2539520, + 2542080, + 2544640, + 2547200, + 2549760, + 2552320, + 2554880, + 2557440 + ], + "y": [ + 10.98666341135899, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 65.00442518387402, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -7.019257179479355, + 28.992584002197333, + 65.00442518387402, + 101.0773033845027, + 137.15018158513138, + 173.22305978576006, + 209.29593798638874, + 263.3747367778558, + 299.44761497848447, + 335.52049317911315, + 371.5933713797418, + 389.59929197058017, + 425.67217017120885, + 461.7450483718375, + 461.7450483718375, + 479.75096896267587, + 497.8179265724662, + 479.75096896267587, + 479.75096896267587, + 461.7450483718375, + 461.7450483718375, + 425.67217017120885, + 389.59929197058017, + 371.5933713797418, + 317.5145725882748, + 281.4416943876461, + 245.36881618701742, + 209.29593798638874, + 173.22305978576006, + 137.15018158513138, + 83.07138279366436, + 46.998504593035676, + 10.98666341135899, + -7.019257179479355, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -79.16501358073671, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -43.09213538010803, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -61.159092989898376, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 46.998504593035676, + 65.00442518387402, + 65.00442518387402, + 46.998504593035676, + 28.992584002197333, + 46.998504593035676, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -61.159092989898376, + -79.16501358073671, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -61.159092989898376, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + 28.992584002197333, + 83.07138279366436, + 101.0773033845027, + 155.2171391949217, + 191.2289803765984, + 245.36881618701742, + 281.4416943876461, + 317.5145725882748, + 353.5264137699515, + 389.59929197058017, + 407.6662495803705, + 443.7391277809992, + 461.7450483718375, + 461.7450483718375, + 497.8179265724662, + 497.8179265724662, + 479.75096896267587, + 461.7450483718375, + 461.7450483718375, + 443.7391277809992, + 425.67217017120885, + 389.59929197058017, + 353.5264137699515, + 317.5145725882748, + 281.4416943876461, + 245.36881618701742, + 173.22305978576006, + 155.2171391949217, + 101.0773033845027, + 65.00442518387402, + 28.992584002197333, + 10.98666341135899, + -43.09213538010803, + -43.09213538010803, + -61.159092989898376, + -97.23197119052705, + -97.23197119052705, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -115.23789178136539, + -97.23197119052705, + -97.23197119052705, + -79.16501358073671, + -79.16501358073671, + -43.09213538010803, + -43.09213538010803, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 46.998504593035676, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 28.992584002197333, + 10.98666341135899, + 28.992584002197333, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -43.09213538010803, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + 10.98666341135899, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + 10.98666341135899, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -7.019257179479355, + -25.086214789269693, + -25.086214789269693, + -7.019257179479355 + ], + "type": "scatter" + } + ], + "layout": { + "autosize": true, + "margin": { + "b": 0, + "l": 0, + "r": 0, + "t": 30 + }, + "template": { + "data": { + "scatter": [ + { + "type": "scatter" + } + ] + } + }, + "title": { + "text": "LINE" + }, + "xaxis": { + "type": "-" + } + } + }, + "text_blob": null + } + } +] \ No newline at end of file