diff --git a/app/css/main.css b/app/css/main.css index b7efbe5..45ad99f 100644 --- a/app/css/main.css +++ b/app/css/main.css @@ -43,7 +43,7 @@ body { #console { /*font-family: "Courier New", Courier, monospace;*/ font-family: "Lucida Console", Monaco, monospace; - height: calc(100vh - 480px); + height: calc(100vh - 505px); width: 100%; overflow-y: auto; overflow-x: none; diff --git a/app/index.html b/app/index.html index b6d4616..dd64fa9 100644 --- a/app/index.html +++ b/app/index.html @@ -131,6 +131,7 @@ + diff --git a/app/js/grbl-defaults.js b/app/js/grbl-defaults.js index 5b3506e..32589d6 100644 --- a/app/js/grbl-defaults.js +++ b/app/js/grbl-defaults.js @@ -1,6 +1,9 @@ +var lastSelectedMachine = ''; + function selectMachine(type) { if (type == "sphinx55") { // Sphinx 55 - COMPLETE with homing switches + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -39,6 +42,7 @@ function selectMachine(type) { } } else if (type == "sphinx1050") { // Sphinx 1050 + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -77,6 +81,7 @@ function selectMachine(type) { } } else if (type == "workbee1050") { //Workbee 1050 COMPLETE with homing switches + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -115,6 +120,7 @@ function selectMachine(type) { } } else if (type == "workbee1010") { // Workbee 1010 + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -153,6 +159,7 @@ function selectMachine(type) { } } else if (type == "workbee1510") { // Workbee1510 + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -191,6 +198,8 @@ function selectMachine(type) { } } else if (type == "acro55") { // Acro 55 + var customFirmware = true; + var customFirmwareFile = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -229,6 +238,8 @@ function selectMachine(type) { } } else if (type == "acro510") { // Acro 510 + var customFirmware = true; + var customFirmwareFile = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -267,6 +278,8 @@ function selectMachine(type) { } } else if (type == "acro1010") { // Acro 1010 + var customFirmware = true; + var customFirmwareFile = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -305,6 +318,8 @@ function selectMachine(type) { } } else if (type == "acro1510") { // Acro 1510 + var customFirmware = true; + var customFirmwareFile = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -343,6 +358,8 @@ function selectMachine(type) { } } else if (type == "acro1515") { // Acro 1515 + var customFirmware = true; + var customFirmwareFile = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -381,6 +398,7 @@ function selectMachine(type) { } } else if (type == "minimill") { // minimill + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -419,6 +437,7 @@ function selectMachine(type) { } } else if (type == "cbeam") { // C-Beam Machine + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -457,6 +476,7 @@ function selectMachine(type) { } } else if (type == "cbeamxl") { // C-Beam XL: + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -495,6 +515,7 @@ function selectMachine(type) { } } else if (type == "leadmachine1010") { // Leadmachine 1010 + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -533,6 +554,7 @@ function selectMachine(type) { } } else if (type == "leadmachine55") { // Leadmachine 55 + var customFirmware = false; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //"Step idle delay, milliseconds" @@ -582,6 +604,54 @@ function selectMachine(type) { enableLimits(); // Enable or Disable displayDirInvert(); setMachineButton(type); + + if (lastSelectedMachine != type) { + if (lastSelectedMachine.substr(0, 4) != type.substr(0, 4)) { + if (customFirmware) { + if (customFirmwareFile == 'acro') { + Metro.dialog.create({ + title: "Custom Firmware Required", + content: "
The OpenBuilds Acro is a 2-axes machine. This requires a custom Grbl installation to allow 2-axes specific homing. We can flash the new firmware for you right now. Proceeding will wipe the firmware from your controller and replace it with an Acro specific version of Grbl. Would you like to proceed?
", + actions: [{ + caption: "No Thank you", + cls: "js-dialog-close", + onclick: function() { + console.log("Do nothing") + } + }, + { + caption: "I already flashed it", + cls: "js-dialog-close", + onclick: function() { + console.log("Do nothing") + } + }, + { + caption: "Yes!", + cls: "js-dialog-close success", + onclick: function() { + $('#controlTab').click(); + $('#consoletab').click(); + $('#grblSettings').hide(); + + var data = { + port: laststatus.comms.interfaces.activePort, + file: 'grbl1.1f-acro.hex' + } + socket.emit('flashGrbl', data) + } + }, + + ] + }); + } + console.log('This machine needs a custom firmware') + } + } + + } + + lastSelectedMachine = type; checkifchanged() }; diff --git a/app/js/ui.js b/app/js/ui.js index 36411d0..43213a9 100644 --- a/app/js/ui.js +++ b/app/js/ui.js @@ -5,6 +5,7 @@ function setConnectBar(val, status) { $('#connectStatus').html("Port: Not Connected"); // Connect/Disconnect Button $("#disconnectBtn").hide(); + $("#flashBtn").hide(); $('#portUSB').parent().show(); $("#connectBtn").show(); if ($('#portUSB').val() != "") { @@ -31,6 +32,8 @@ function setConnectBar(val, status) { $('#portUSB').parent().hide(); $("#connectBtn").attr('disabled', false); $("#disconnectBtn").show(); + $("#flashBtn").hide(); + // Port Dropdown $('#portUSB').parent(".select").addClass('disabled') $('#portUSB').parent(".select").removeClass('success') @@ -45,6 +48,7 @@ function setConnectBar(val, status) { $('#portUSB').parent().hide(); $("#connectBtn").attr('disabled', false); $("#disconnectBtn").show(); + $("#flashBtn").hide(); // Port Dropdown $('#portUSB').parent(".select").addClass('disabled') $('#portUSB').parent(".select").removeClass('success') @@ -60,6 +64,7 @@ function setConnectBar(val, status) { $('#portUSB').parent().hide(); $("#connectBtn").attr('disabled', false); $("#disconnectBtn").show(); + $("#flashBtn").hide(); // Port Dropdown $('#portUSB').parent(".select").addClass('disabled') $('#portUSB').parent(".select").removeClass('success') @@ -75,6 +80,22 @@ function setConnectBar(val, status) { $('#portUSB').parent().hide(); $("#connectBtn").attr('disabled', false); $("#disconnectBtn").show(); + $("#flashBtn").hide(); + // Port Dropdown + $('#portUSB').parent(".select").addClass('disabled') + $('#portUSB').parent(".select").removeClass('success') + $('#portUSB').parent(".select").addClass('alert') + // Set Port Dropdown to Current Value + $("#portUSB").val(status.comms.interfaces.activePort); + } else if (val == 6) { // Firmware Upgrade State + // Status Badge + $('#connectStatus').html("Port: Flashing"); + // Connect/Disconnect Button + $("#connectBtn").hide(); + $('#portUSB').parent().hide(); + $("#connectBtn").attr('disabled', false); + $("#disconnectBtn").hide(); + $("#flashBtn").show(); // Port Dropdown $('#portUSB').parent(".select").addClass('disabled') $('#portUSB').parent(".select").removeClass('success') @@ -141,6 +162,16 @@ function setControlBar(val, status) { $('#toolBtn2').show().attr('disabled', true); $('#homeBtn').show().attr('disabled', true); $('.estop').show() + } else if (val == 6) { // Firmware Upgrade State + $('#runBtn').hide().attr('disabled', true); + $('#chkSize').show().attr('disabled', true); + $('#resumeBtn').hide().attr('disabled', true); + $('#pauseBtn').hide().attr('disabled', true); + $('#stopBtn').hide().attr('disabled', true); + $('#toolBtn').hide().attr('disabled', true); + $('#toolBtn2').hide().attr('disabled', true); + $('#homeBtn').hide().attr('disabled', true); + $('.estop').hide() } } @@ -151,7 +182,7 @@ function setJogPanel(val, status) { // $("#jogcontrols").slideUp(20); $("#editor").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); $("#macros").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); - $("#console").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); + $("#console").css('height', 'calc(' + 100 + 'vh - ' + 505 + 'px)'); $("#renderArea").css('height', 'calc(' + 100 + 'vh - ' + 448 + 'px)'); // $('#console').scrollTop($("#console")[0].scrollHeight - $("#console").height()); if (editor) { @@ -175,7 +206,7 @@ function setJogPanel(val, status) { $("#svgview").css('background-color', '#ffffff'); $("#editor").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); $("#macros").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); - $("#console").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); + $("#console").css('height', 'calc(' + 100 + 'vh - ' + 505 + 'px)'); $("#renderArea").css('height', 'calc(' + 100 + 'vh - ' + 448 + 'px)'); // $('#console').scrollTop($("#console")[0].scrollHeight - $("#console").height()); if (editor) { @@ -198,7 +229,7 @@ function setJogPanel(val, status) { $("#svgview").css('background-color', '#f5f6f7'); $("#editor").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); $("#macros").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); - $("#console").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); + $("#console").css('height', 'calc(' + 100 + 'vh - ' + 505 + 'px)'); $("#renderArea").css('height', 'calc(' + 100 + 'vh - ' + 448 + 'px)'); if (editor) { editor.resize() @@ -218,7 +249,7 @@ function setJogPanel(val, status) { $("#svgview").css('background-color', '#f5f6f7'); $("#editor").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); $("#macros").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); - $("#console").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); + $("#console").css('height', 'calc(' + 100 + 'vh - ' + 505 + 'px)'); $("#renderArea").css('height', 'calc(' + 100 + 'vh - ' + 448 + 'px)'); if (editor) { editor.resize() @@ -237,7 +268,7 @@ function setJogPanel(val, status) { $("#svgview").css('background-color', '#f5f6f7'); $("#editor").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); $("#macros").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); - $("#console").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); + $("#console").css('height', 'calc(' + 100 + 'vh - ' + 505 + 'px)'); $("#renderArea").css('height', 'calc(' + 100 + 'vh - ' + 448 + 'px)'); // $('#console').scrollTop($("#console")[0].scrollHeight - $("#console").height()); if (editor) { @@ -252,6 +283,30 @@ function setJogPanel(val, status) { cone.visible = false; } } + } else if (val == 6) { // Firmware Upgrade State + // Show panel and resize editor + $("#svgview").css('background-color', '#f5f6f7'); + // $("#jogcontrols").slideUp(20); + $("#editor").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); + $("#macros").css('height', 'calc(' + 100 + 'vh - ' + 485 + 'px)'); + $("#console").css('height', 'calc(' + 100 + 'vh - ' + 505 + 'px)'); + $("#renderArea").css('height', 'calc(' + 100 + 'vh - ' + 448 + 'px)'); + // $('#console').scrollTop($("#console")[0].scrollHeight - $("#console").height()); + if (editor) { + editor.resize() + } + $('.jogbtn').attr('disabled', true); + if ($('#jograte').attr('disabled')) { + $('#jograte').attr('disabled', false); + } + $('#xPos').html('0.00'); + $('#yPos').html('0.00'); + $('#zPos').html('0.00'); + if (!isJogWidget && webgl) { + if (!simRunning) { + cone.visible = false; + } + } } } @@ -277,5 +332,10 @@ function setConsole(val, status) { } else if (val == 5) { // Alarm State $("#command").attr('disabled', false); $("#sendCommand").prop('disabled', false); + } else if (val == 6) { // Firmware Upgrade State + if (!$('#command').attr('disabled')) { + $('#command').attr('disabled', true); + } + $("#sendCommand").prop('disabled', true); } } \ No newline at end of file diff --git a/app/js/websocket.js b/app/js/websocket.js index ce7ce24..4b2c175 100644 --- a/app/js/websocket.js +++ b/app/js/websocket.js @@ -43,7 +43,7 @@ function printLog(string) { template += '[' + (time.getHours() < 10 ? '0' : '') + time.getHours() + ":" + (time.getMinutes() < 10 ? '0' : '') + time.getMinutes() + ":" + (time.getSeconds() < 10 ? '0' : '') + time.getSeconds() + '] '; template += string; $('#console').append(template); - $('#console').scrollTop($("#console")[0].scrollHeight - $("#console").height()); + $('#console').scrollTop(($("#console")[0].scrollHeight - $("#console").height()) + 20); } } @@ -193,6 +193,26 @@ function initSocket() { // }); + socket.on('progStatus', function(data) { + $('#controlTab').click(); + $('#consoletab').click(); + console.log(data.port, data.string) + var string = data.string + if (string) { + if (string.indexOf('flash complete') != -1) { + setTimeout(function() { + populatePortsMenu(); + }, 400) + } + string = string.replace('flash complete.', " FLASH FAILED! "); + string = string.replace('', " "); + string = string.replace('', ""); + printLog("[ Firmware Upgrade ] " + string) + + // $('#sendCommand').click(); + } + }); + socket.on('status', function(status) { if (nostatusyet) { diff --git a/grbl1.1f-acro.hex b/grbl1.1f-acro.hex new file mode 100644 index 0000000..891fab1 --- /dev/null +++ b/grbl1.1f-acro.hex @@ -0,0 +1,1872 @@ +:100000000C94BB010C94CD010C94CD010C94F9011E +:100010000C94811D0C94CD010C94CD010C94CD0158 +:100020000C94CD010C94CD010C94CD010C94C6160A +:100030000C94CD010C94CD010C94CD010C94CD0108 +:100040000C947A160C94CD010C94C01A0C94421B9B +:100050000C94CD010C94CD010C94CD010C94CD01E8 +:100060000C94CD010C94CD0138303E3041304430F9 +:10007000493051305930F430F430F4306630693062 +:1000800072307B30F430F430F430F430F430F4304B +:10009000873091309D30A530A830B130BA30C030B3 +:1000A000F430F430C930D230DD30C8045B105B105E +:1000B000D204DD04E804F3045B10F7045B100505CB +:1000C0005B100F05190523055B105B105B103305F2 +:1000D00040054D05F61AF81A311B311B311B311B37 +:1000E000311B311B311B311B311B311BFE1A001B15 +:1000F000021B041B061B081B0A1B0C1B311B101BBD +:10010000121B141B161B181B1A1B311B1C1B084A25 +:10011000D73B3BCE016E84BCBFFDC12F3D6C74311B +:100120009ABD56833DDA3D00C77F11BED9E4BB4C72 +:100130003E916BAAAABE000000803F05A84CCDB23C +:10014000D44EB93836A9020C50B9918688083CA61D +:10015000AAAA2ABE000000803F000D0A4772626C06 +:1001600020312E3167205B27242720666F7220689C +:10017000656C705D0D0A00244E005B4F50543A00D0 +:100180005B5645523A312E31672E3230313831319B +:1001900031323A005B544C4F3A005B4739323A00F7 +:1001A0003330003238005B4700204700204D0020EC +:1001B000530020460020540033382E005B47433A5A +:1001C00047005B484C503A24242024232024472015 +:1001D000244920244E2024783D76616C20244E78DA +:1001E0003D6C696E6520244A3D6C696E6520245320 +:1001F0004C50202443202458202448207E202120B5 +:100200003F206374726C2D785D0D0A00536C656538 +:1002100070696E6700526573746F72696E672073E0 +:1002200070696E646C6500526573746F72696E6795 +:100230002064656661756C74730050676D20456E4F +:100240006400436865636B204C696D697473004397 +:100250006865636B20446F6F720044697361626C00 +:10026000656400456E61626C656400436175746924 +:100270006F6E3A20556E6C6F636B6564002724487F +:10028000277C2724582720746F20756E6C6F636B52 +:1002900000526573657420746F20636F6E74696EAD +:1002A0007565005B4D53473A00414C41524D3A0051 +:1002B0007C413A007C4F763A007C57434F3A007CB1 +:1002C000506E3A007C46533A007C42663A007C57B6 +:1002D000506F733A007C4D506F733A00536C6565F4 +:1002E0007000446F6F723A00436865636B00416C45 +:1002F00061726D00486F6D65004A6F6700486F6CF2 +:10030000643A0052756E0049646C65000D0A005B2A +:100310005052423A006572726F723A0000007A439E +:1003200000007A4300007A430000FA430000FA43D9 +:100330000000FA4300A00C4700A00C4700A00C47A7 +:10034000000048C3000048C3000048C30A00001969 +:10035000010AD7233C6F12033B00007A44000000DF +:100360000000000000C8410000FA43FA00000080CD +:100370003F6F6B0D0A0011241FBECFEFD8E0DEBF28 +:10038000CDBF27E0A0E0B1E001C01D92A136B207C9 +:10039000E1F70E94D72B0C94703A0C940000EBE626 +:1003A000F0E08081897E8083E8E6F0E080818E7FC6 +:1003B0008083089584B1897E84B985B1866185B9C9 +:1003C0008091700183FF0BC080916B0086618093E8 +:1003D0006B008091680081608093680008950C94A0 +:1003E000CF01F999FECF92BD81BD81E08FBB80B571 +:1003F00008951F920F920FB60F9211242F933F93DF +:100400004F935F936F937F938F939F93AF93BF931C +:10041000EF93FF9380911A01813049F08091080792 +:10042000811105C00E94042981E00E941D1DFF91D9 +:10043000EF91BF91AF919F918F917F916F915F915C +:100440004F913F912F910F900FBE0F901F901895D5 +:1004500093B196718091700186FD02C086E1982764 +:10046000992349F091FB882780F992FD8260907171 +:1004700019F08460089580E0089561E071E088E9F2 +:1004800091E00C94361D9F92AF92BF92CF92DF9273 +:10049000EF92FF920F931F93CF93DF935B018A013B +:1004A0007C01E40EF51EEC01912C6B01C81AD90AEF +:1004B000C6018C0F9D1FCE15DF0589F00E94F1014A +:1004C000911008C0292D990C330B232F221F2227AE +:1004D000221F01C021E0982E920E8993E9CFC50119 +:1004E000800F911F0E94F10121E030E0981611F079 +:1004F00020E030E0C901DF91CF911F910F91FF9073 +:10050000EF90DF90CF90BF90AF909F900895F894B8 +:10051000F999FECF92BD81BD81E08FBB80B5862762 +:10052000482F082E000C550B262F30E024233523AE +:10053000232B39F06F3F19F060BD84E006C084E1E1 +:1005400004C0882321F060BD84E28FBBF99A7894BF +:1005500008959F92AF92BF92CF92DF92EF92FF9257 +:100560000F931F93CF93DF935C018A017B01E40E0D +:10057000F51EEB01912C6C01C61AD70ACE018C0D29 +:100580009D1DCE15DF0589F0911008C0292D990C0D +:10059000330B232F221F2227221F01C021E0699144 +:1005A000922E960E0E948702E9CF692DC501800F19 +:1005B000911FDF91CF911F910F91FF90EF90DF90EE +:1005C000CF90BF90AF909F900C94870290911B01A9 +:1005D000911107C086FF02C0439A01C04398109250 +:1005E000250108952F923F924F925F926F927F92D2 +:1005F0008F929F92AF92BF92CF92DF92EF92FF9233 +:100600000F931F93CF93DF93CDB7DEB7CA54D109B1 +:100610000FB6F894DEBF0FBECDBF8AE3E0ECF1E089 +:10062000DF011D928A95E9F78BE0E0E8F1E0A1ECAB +:10063000B1E001900D928A95E1F780911107843223 +:1006400011F00C947C1081E08093C1011092C201E2 +:1006500083E08A8FB1E0BBA3212C312C1CA61BA602 +:1006600010E01B8E1F8EEE24E394F12CEAE0AE2EF8 +:10067000B12CF1E68F2EF3E09F2E8A8DE82FF0E06B +:10068000EF5EF84FD080DD2009F437C29FEB9D0D5F +:100690009A3110F00C944B108F5F8A8FBE016A5E06 +:1006A0007F4FCE014A960E942829882311F40C948A +:1006B0004D104E885F88688C798CC301B2010E940E +:1006C000DB390E941937062F70E080E090E00E942D +:1006D0004A379B01AC01C301B2010E94A03520E062 +:1006E00030E048EC52E40E94F8380E9465390E94DC +:1006F0001937CB01E7E4DE1629F0FDE4DF1609F433 +:10070000EAC035C1083209F4C6C020F5043168F4E6 +:10071000013108F08AC0043009F452C008F464C002 +:100720000A3009F445C00C945B100C3109F440C048 +:1007300050F4063110F00C945B1025E1201B20933F +:10074000C30126E0ADC00E3199F1063209F44CC068 +:100750000C945B100D3309F498C0A8F4053381F1B3 +:1007600040F40B3209F47AC0013309F477C00C94D9 +:100770005B100C3310F00C945B106AEC600F60930C +:10078000C70129E08DC00C3538F40A3508F053C094 +:10079000003581F10C945B100C3551F00F3510F0E1 +:1007A0000C945B102EE5201B2093C20125E078C03D +:1007B000009731F42F8D21110C944F1031E03F8FB1 +:1007C0000093C001202F2D7F2C3119F00C3509F03A +:1007D00064C0009721F00A9711F00C945B10600F31 +:1007E0006093C00120E061C04F8D41110C944F1007 +:1007F000A2E0AF8F0093C101063209F050C08431EE +:10080000910559F08E31910541F08832910529F01A +:100810008233910511F00C945B10B5010E940D3AE2 +:1008200066576093C10121E040C06FEE600F609396 +:10083000C50122E035C0892B31F466EA600F609370 +:10084000C40123E032C06A30710511F00C945B10D2 +:100850000A3511F40C945B1024E027C0BF8DB11150 +:100860000C944F10013331F41092C60128E0E3E0FC +:10087000EF8F1BC00A9711F00C945B10F1E0F0931E +:10088000C60128E033E03F8F10C0892B11F00C9493 +:100890005B102AE00AC027E003C020E001C021E08D +:1008A000892B19F087E10C948310C70102C0880FCF +:1008B000991F2A95E2F72BA53CA528233923232B42 +:1008C00019F085E10C948310ABA5BCA5A82BB92B1E +:1008D000BCA7ABA7D2CE892B29F7063018F403307A +:1008E00058F016C0083010F40C945B100A30F0F089 +:1008F0000E3159F00C945B10002319F0013011F106 +:1009000004C0B3E0B093C8011DC00093C8011AC071 +:10091000043021F0053031F080E101C080E28093A5 +:10092000CA0102C01092CA018CE00DC0093031F03A +:100930008091C90180648093C90102C01092C901ED +:100940008DE001C08BE0F70102C0EE0FFF1F8A951A +:10095000E2F72BA53CA52E233F23232B09F0B1CF93 +:100960002BA53CA52E2B3F2B3CA72BA786CE8D2D50 +:10097000DD0C990BAA0BBB0BFC01E654F109E53128 +:10098000F10510F00C945B10EB5AFF4F0C94433AB6 +:100990004092CC015092CD016092CE017092CF0175 +:1009A00080E087C04092D0015092D1016092D20184 +:1009B0007092D301116081E07CC04092D4015092CA +:1009C000D5016092D6017092D701126082E071C0A9 +:1009D0004092D8015092D9016092DA017092DB0105 +:1009E000146083E066C00093DC0184E062C0C30150 +:1009F000B2010E9412376093DD017093DE01809393 +:100A0000DF019093E00185E054C04092E1015092F3 +:100A1000E2016092E3017092E40186E04AC04092F4 +:100A2000E5015092E6016092E7017092E80187E0EB +:100A300040C04092E9015092EA016092EB0170924D +:100A4000EC0188E036C020E030E04FE753E4C3011A +:100A5000B2010E94B838181614F40C945110009387 +:100A6000ED0189E026C04092EE015092EF016092C4 +:100A7000F0017092F1013B8D31603B8F8AE019C02B +:100A80004092F2015092F3016092F4017092F501EC +:100A90004B8D42604B8F8BE00CC04092F601509220 +:100AA000F7016092F8017092F9018B8D84608B8F51 +:100AB0008CE06701082E02C0CC0CDD1C0A94E2F722 +:100AC000960122213321232B11F00C945310D401D1 +:100AD00002C0B595A7958A95E2F7A0FF0BC020E06C +:100AE00030E0A901C301B2010E94963687FF02C01F +:100AF0000C9455102C283D28C0CDBB8DBB2329F06C +:100B0000EF8DE11102C0F2E0FF8F25FE0FC0809152 +:100B1000DD019091DE01A091DF01B091E00181380B +:100B20009649A849B10514F00C9457103BA1332302 +:100B300029F020FC02C00C94611018C08091C20101 +:100B4000813071F44F8D4230E1F58091C1018035E3 +:100B5000C1F18823B1F120FC02C00C94611031C0B6 +:100B60008091810181112DC020FE1BC08091C301A5 +:100B7000813039F523E333E34BEC51E46091CC0150 +:100B80007091CD018091CE019091CF010E94F838F3 +:100B90006093CC017093CD018093CE019093CF01EF +:100BA00010C080918F0190919001A0919101B0911E +:100BB00092018093CC019093CD01A093CE01B0938C +:100BC000CF0130FC10C080918B0190918C01A091DD +:100BD0008D01B0918E018093E9019093EA01A09379 +:100BE000EB01B093EC018091C001843039F426FC14 +:100BF00003C08CE10C948310E89426F88091C50121 +:100C0000882369F0813029F48FAF1DAE92E09BAF4D +:100C10000BC01FAEA2E0ADAFB1E0BBAF05C0E2E0DC +:100C2000EFAFF1E0FDAF1BAE8091C301813021F049 +:100C30002F8D2330C9F52FC060ECC62E61E0D62E73 +:100C4000E12CF12C3B8DA32EB12CC5010E2C02C042 +:100C5000959587950A94E2F780FF12C023E333E36A +:100C60004BEC51E4D6019E966D917D918D919C91B6 +:100C7000D1970E94F838F60166A777A780AB91ABB1 +:100C8000FFEFEF1AFF0A24E0C20ED11C33E0E31697 +:100C9000F104D9F6CDCF8091C601813029F44B8D76 +:100CA000443011F00C9459108CE0E4EAF1E0DE01DC +:100CB000119601900D928A95E1F78BA59CA591FD67 +:100CC00008C00091C0010A30C9F00C3509F4B3C066 +:100CD0001EC18091C701873018F08DE10C948310FC +:100CE00090918601891769F3BE016F5F7F4F0E9463 +:100CF000421A882311F40C946F10E3CF9B8D91114D +:100D000003C08AE10C948310C10180759927892B57 +:100D100009F46FCF6091E1017091E2018091E301EC +:100D20009091E4010E94DB390E9419376730A8F6E0 +:100D30008091DC01843141F0823011F00C945B1021 +:100D400027FE02C00C945B10AFEA2A22662319F03A +:100D5000615069A703C0B091C701B9A760ED71E008 +:100D600089A50E94421A882311F40C946F100091F7 +:100D7000DC014090BC015090BD016090BE017090BC +:100D8000BF0140ECE42E41E0F42E50E8A52E51E0E6 +:100D9000B52EC12CD12CEB8D8E2E912CC4010C2C98 +:100DA00002C0959587950A94E2F780FF35C004311B +:100DB00051F5D501D0962D913D914D915C91D397F0 +:100DC00058966D917D918D919C915B970E94A03575 +:100DD000F70126A537A540A951A90E94A035D70142 +:100DE00050966D937D938D939C935397B2E0CB1265 +:100DF00013C0A30192010E94A035F701608B718B93 +:100E0000828B938B09C0F70186A597A5A0A9B1A9EC +:100E1000808B918BA28BB38BFFEFCF1ADF0A24E07C +:100E2000E20EF11C34E0A30EB11C43E0C416D10461 +:100E300009F0B4CF3FC18B8D882309F462CF409075 +:100E4000BC015090BD016090BE017090BF0120E8D0 +:100E5000822E21E0922EDE0111967D0130ECC32E10 +:100E600031E0D32EA12CB12CE82FF0E0F8A7EFA3AE +:100E70008FA198A50A2C02C0959587950A94E2F750 +:100E800080FF29C0D7012D913D914D915C91F401D6 +:100E9000608D718D828D938D0E94A035D6019E96B6 +:100EA0002D913D914D915C91D1970E94A035F60115 +:100EB00066A777A780AB91ABF2E0AF1216C0A30193 +:100EC00092010E94A035D6019E966D937D938D93DD +:100ED0009C93D1970AC0F40180A991A9A2A9B3A9B2 +:100EE000F60186A797A7A0ABB1ABFFEFAF1ABF0A79 +:100EF00024E0820E911C34E0E30EF11C44E0C40EA9 +:100F0000D11C83E0A816B10409F0B2CFD2C09F8DE6 +:100F1000933069F40E3109F494C0053309F4C3C069 +:100F20000C3109F0C6C060ED71E086E08DC0AB8D7C +:100F3000AA2381F3B091C401BFA34090BC0150909B +:100F4000BD016090BE017090BF0180E8A82E81E0D5 +:100F5000B82E90ECE92E91E0F92EFE0131964F016A +:100F6000C12CD12C2A2F30E03AA729A789A59AA510 +:100F70000C2C02C0959587950A94E2F780FD0BC072 +:100F8000F501808D918DA28DB38DF70186A797A76E +:100F9000A0ABB1AB44C0053309F441C0FFA1F111CE +:100FA0002BC0D501D0962D913D914D915C91D39759 +:100FB000F40160817181828193810E94A135D70102 +:100FC0009E962D913D914D915C91D1970E94A135B6 +:100FD000F70166A777A780AB91ABF2E0CF121FC0F5 +:100FE000A30192010E94A135D7019E966D937D9336 +:100FF0008D939C93D19713C0F501208D318D428D37 +:10100000538DD7019E966D917D918D919C91D19735 +:101010000E94A135F70166A777A780AB91ABFFEFE0 +:10102000CF1ADF0A24E0A20EB11C34E0E30EF11C5B +:1010300044E0840E911C83E0C816D10409F096CFD9 +:1010400069CF60ED71E087E00E94421A882311F4B5 +:101050000C946F109B8D911103C019A61F8E2AC08E +:10106000A0E8B1E0E0ECF1E080E090E04B8D242FCF +:1010700030E0A901082E02C0559547950A94E2F781 +:1010800040FD0AC058964D915D916D917C915B97A2 +:10109000408B518B628B738B019614963496833000 +:1010A000910539F706C08091C101823010F00C948F +:1010B0005D1019A68091C1018FA3803529F49B8D05 +:1010C00091110C945F107AC2AF8DA23009F076C2F4 +:1010D000BFA1B11104C0EB8DE11170C22AC020E0A4 +:1010E00030E0A9016091CC017091CD018091CE01D9 +:1010F0009091CF010E949636882309F4E2C7FFA1A0 +:10110000FC3809F445C240F4F230A9F0F330B1F0F4 +:10111000F13009F053C20AC02FA12E3809F438C2A9 +:1011200008F433C22F3809F430C248C23B8D311164 +:1011300045C21F8E43C24BA144604BA38B8D8823B5 +:1011400009F4DFCDBBADAB2FB0E0B8ABAFA7FDADC1 +:10115000EF2FF0E0FCABEBAB81E090E07C010BAC5F +:1011600002C0EE0CFF1C0A94E2F70DAC02C0880F1F +:10117000991F0A94E2F7E82AF92A2B8D822F90E032 +:101180008E219F21892B09F49EC7FD01EE0FFF1FC1 +:10119000EE0FFF1FE054FE4FAA0FBB1FAA0FBB1F8D +:1011A000A856BE4F2D913D914D915C9166A577A5B6 +:1011B00080A991A90E94A0352B013C01EBA9FCA9B3 +:1011C000EE0FFF1FEE0FFF1FE054FE4FABA9BCA9AF +:1011D000AA0FBB1FAA0FBB1FA856BE4F2D913D9152 +:1011E0004D915C9166A577A580A991A90E94A03533 +:1011F0004B015C01610130E8C322DD2427FEF5C00C +:10120000E89427F84CE050E06EEE71E088E991E058 +:101210000E94633A892B11F481E275C78091C30162 +:101220008130B1F423E333E34BEC51E46091E50109 +:101230007091E6018091E7019091E8010E94F838F1 +:101240006093E5017093E6018093E7019093E801D4 +:101250008091E5019091E601A091E701B091E8014C +:101260008FAB98AFA9AFBAAFA3019201C301B2018E +:101270000E94F83827966CAF7DAF8EAF9FAF27974F +:10128000A5019401C501B4010E94F8382B966CAFFA +:101290007DAF8EAF9FAF2B9720E030E040E850E469 +:1012A0006FA978AD89AD9AAD0E94F8382FA938ADF5 +:1012B00049AD5AAD0E94F83827962CAD3DAD4EADE4 +:1012C0005FAD27970E94A0352B962CAD3DAD4EAD5E +:1012D0005FAD2B970E94A0356B017C0120E030E0D0 +:1012E000A9010E94963687FDF0C6C701B6010E948B +:1012F00097396B017C012B962CAD3DAD4EAD5FADAA +:101300002B9727966CAD7DAD8EAD9FAD27970E9434 +:10131000A1350E9497399B01AC01C701B6019058D5 +:101320000E94A0366B017C019FA1933021F4F7FA53 +:10133000F094F7F8F09420E030E0A9016FA978ADBF +:1013400089AD9AAD0E94963687FF11C0F7FAF094E6 +:10135000F7F8F0948FA998ADA9ADBAADB0588093C5 +:10136000E5019093E601A093E701B093E8010FA592 +:1013700018A9000F111F000F111F00531E4FA701C6 +:101380009601C501B4010E94F8389B01AC01C3016C +:10139000B2010E94A03520E030E040E05FE30E940F +:1013A000F838D8016D937D938D939C9313970BA977 +:1013B0001CA9000F111F000F111F00531E4FA70182 +:1013C0009601C301B2010E94F838A50194010E9460 +:1013D000A13520E030E040E05FE30E94F838F801FA +:1013E0006083718382839383E9C0212F30E038AF1B +:1013F0002FABE222F322EF2809F469C631EF232252 +:101400008091C301813009F47BC0EFA5F8A9EE0FEC +:10141000FF1FEE0FFF1FE053FE4FC080D180E28020 +:10142000F380A7019601C301B2010E94A0352B01F0 +:101430003C01EBA9FCA9EE0FFF1FEE0FFF1FE053CD +:10144000FE4F80819181A281B3818FA798ABA9AB18 +:10145000BAAB9C01AD01C501B4010E94A0354B019E +:101460005C01A3019201C301B2010E94F8382B0173 +:101470003C01A5019401C501B4010E94F8389B010B +:10148000AC01C301B2010E94A1350E9497394B0102 +:101490005C01A7019601C701B6010E94F8386B01F3 +:1014A0007C012FA538A949A95AA9CA01B9010E94EE +:1014B000F8389B01AC01C701B6010E94A1350E941A +:1014C00097396B017C016093E5017093E60180938D +:1014D000E7019093E8019B01AC01C501B4010E94B2 +:1014E000A0354B015C01E894B7F82AE037ED43EAF8 +:1014F0005BE3C501B4010E94B83818164CF15EC018 +:1015000000EC11E08FA998AD0C2C02C09595879541 +:101510000A94E2F780FF12C023E333E34BEC51E47B +:10152000D80150966D917D918D919C9153970E9419 +:10153000F838F801608B718B828B938BFFEFCF1A99 +:10154000DF0A0C5F1F4F23E0C216D104D9F65DCF2E +:1015500020E030E040E05FE3C501B4010E94B8380C +:1015600018160CF459CE2FE632E143E85AE3C701CE +:10157000B6010E94F8389B01AC01C501B4010E947C +:10158000B83818160CF448CE19C03BA130613BA303 +:101590008FA18E58823018F44BA148604BA38B8DDD +:1015A000882309F4AECB4CE050E06EEE71E088E9A0 +:1015B00091E00E94633A892B09F42ECE2BA1217071 +:1015C0009BA190FF03C0C1018E7D03C0C1018E7D30 +:1015D0009C7FAF8DA111937E892B09F07AC58E0176 +:1015E000035F1F4F89E0F80111928A95E9F72223E2 +:1015F00009F44BC08BA59CA5867B892B09F06BC594 +:101600008091C001853311F0811165C580918B01F6 +:1016100090918C01A0918D01B0918E01898B9A8B54 +:10162000AB8BBC8B9091890180918801892B409173 +:10163000CC015091CD016091CE017091CF014D87C9 +:101640005E876F87788B84608D8B8091700185FFBA +:1016500006C08EEE91E00E94803181113EC5B80136 +:101660008EEE91E00E943D3580911A01811139C5BD +:101670000E945627892B09F434C580E280931A0111 +:101680000E94BB1D0E940E192CC580917001F09024 +:10169000890181FF26C08FA18150833018F0FBA102 +:1016A000F064FBA32B8D222339F03F8D323021F4DF +:1016B0004BA140684BA315C080E1F81212C0809185 +:1016C000800181509BA19074833030F4992349F0BC +:1016D0009BA190629BA305C0911103C0ABA1A06226 +:1016E000ABA38091DD019091DE01A091DF01B0916B +:1016F000E0018093940190939501A0939601B0939B +:1017000097018091C20180938101882311F088E0C4 +:101710008D8B8091CC019091CD01A091CE01B091A3 +:10172000CF0180938F0190939001A0939101B0938A +:1017300092018D879E87AF87B88B8090E90190904A +:10174000EA01A090EB01B090EC01A5019401609139 +:101750008B0170918C0180918D0190918E010E947E +:101760009636BBA1B074EB2E811103C0EBA1E5FF4F +:1017700020C0FF2071F0FBA1F7FD0BC0EE2021F08F +:1017800040E050E0BA0102C0B501A4018F2D0E94D3 +:1017900038318091E9019091EA01A091EB01B0917B +:1017A000EC0180938B0190938C01A0938D01B093F9 +:1017B0008E01E1100CC080918B0190918C01A09161 +:1017C0008D01B0918E01898B9A8BAB8BBC8B8091F4 +:1017D000ED01809393018091CA019091890198173E +:1017E00051F049895A896B897C890E9438318091EE +:1017F000CA01809389019D8980918901892B8D8BF4 +:10180000F090C901809188018F1569F080911A01CB +:10181000823029F00E9466278F2D0E94E602809177 +:10182000C901809388019D8980918801892B8D8BC6 +:101830008091C001843099F4C090E101D090E20120 +:10184000E090E301F090E40180911A01823039F0D8 +:101850000E94662740E0C701B6010E94D52880910A +:10186000C501809384018091C301809382012F8DF3 +:10187000233071F58091C60180938501811108C0E4 +:101880001092F6011092F7011092F8011092F901EE +:10189000C090F601D090F701E090F801F090F901C6 +:1018A000A70196016091BC017091BD018091BE01BC +:1018B0009091BF010E949636882351F0C092BC01DE +:1018C000D092BD01E092BE01F092BF010E94BB31F7 +:1018D0008091C70190918601981769F080938601E5 +:1018E0008CE0FE013196A4EAB1E001900D928A9558 +:1018F000E1F70E94BB318091C40180938301809104 +:10190000C0018632F1F138F48C3109F18E31F9F0F1 +:101910008A3069F04FC08C35D1F1863609F441C068 +:10192000883209F047C068E971E087E02DC060EDBA +:1019300071E089A50E942E1A8091860139A538137D +:1019400039C08CE0E0EDF1E0A4EAB1E025C08D897A +:1019500081608D8B4F8D442329F0B8018EEE91E08C +:101960000E943D35B80180ED91E00E943D358CE04C +:10197000E0EDF1E0A8E9B1E001900D928A95E1F780 +:1019800019C068E971E086E00E942E1A13C08CE04D +:10199000EEEEF1E0A0EBB1E001900D928A95E1F757 +:1019A00007C08CE0E0EBF1E0DF011D928A95E9F7DA +:1019B0000E94BB318091C10180938001803509F480 +:1019C0001CC3BF8DB23009F018C3813021F4BE01B1 +:1019D000635F7F4F06C0811109C08D8981608D8B47 +:1019E000B8018EEE91E00E943D35FEC282508230F9 +:1019F00008F093C28091E5019091E601A091E70182 +:101A0000B091E8018F8F98A3A9A3BAA3ABAD94E0DE +:101A1000A99F70011124F701E856FE4FF8A7EFA324 +:101A2000970120533E4F3AA729A7D9014D905D90C9 +:101A30006D907C902081318142815381C301B2013C +:101A40000E94A1356BA77CA78DA79EA7EDADB4E042 +:101A5000EB9F80011124980128563E4F3CAF2BAFDD +:101A6000C80180539E4F9EAF8DAFDC018D909D903D +:101A7000AD90BC90F9012081318142815381C50133 +:101A8000B4010E94A1356FA778AB89AB9AAB77FA06 +:101A9000709477F87094D501C401B0588B8F9C8FE7 +:101AA000AD8FBE8FF701E251FE4F2BA53CA54DA592 +:101AB0005EA560817181828193810E94A0356B0156 +:101AC0007C01F801E251FE4F2FA538A949A95AA976 +:101AD00060817181828193810E94A0354B015C01FC +:101AE000A7019601C301B2010E94F8386BAB7CAB31 +:101AF0008DAB9EABA50194016B8D7C8D8D8D9E8DE4 +:101B00000E94F8389B01AC016BA97CA98DA99EA904 +:101B10000E94A1356BAB7CAB8DAB9EABA501940154 +:101B2000C301B2010E94F8384B015C01A701960184 +:101B30006B8D7C8D8D8D9E8D0E94F8389B01AC0144 +:101B4000C501B4010E94A0352BA93CA94DA95EA9ED +:101B50000E9420366B017C019BA192FF13C02DEBEC +:101B600037E346E055EBC701B6010E94B83887FD60 +:101B70001DC02BED3FE049EC50E4C701B6010E94C7 +:101B8000A03512C02DEB37E346E055E3C701B6019F +:101B90000E949636181654F02BED3FE049EC50E4C5 +:101BA000C701B6010E94A1356B017C0180906401E0 +:101BB00090906501A0906601B09067012F8D38A1CB +:101BC00049A15AA1CA01B9010E94A135A5019401F8 +:101BD0000E94A035A50194010E94F8380E9497390F +:101BE0004B015C0120E030E040E05FE3C701B6015B +:101BF0000E94F8382F8D38A149A15AA10E94F838C7 +:101C00009F77A50194010E94A0360E9485370E940B +:101C100019377CAB6BABDB01AB2B09F4D8CE1D893C +:101C20004B01A12CB12C13FF12C0C501B4010E94BD +:101C300048379B01AC016D857E858F8598890E9410 +:101C4000F8386D877E878F87988B177F1D8BC5012E +:101C5000B4010E9448374B015C019B01AC01C701F4 +:101C6000B6010E94A0366BA37CA38DA39EA3EFAD0B +:101C7000B4E0EB9FC00111248C0108561E4FFC01FB +:101C8000E251FE4FD8012D913D914D915C916081C3 +:101C90007181828193810E94A035A50194010E94E7 +:101CA000A03627966CAF7DAF8EAF9FAF27972BA145 +:101CB0003CA14DA15EA1CA01B9010E94F8389B0167 +:101CC000AC0160E070E080E090E40E94A0356B0120 +:101CD0007C012BEA3AEA4AE25EE36BA17CA18DA18A +:101CE0009EA10E94F8384B015C0120E030E040E802 +:101CF00050E4C701B6010E94A1359B01AC01C501AA +:101D0000B4010E94F8386FAB78AF89AF9AAF20E08A +:101D100030E040E05FE3C701B6010E94F838239647 +:101D20006CAF7DAF8EAF9FAF23971F8E222423947D +:101D3000312CEBA9FCA9E215F30509F448CEBF8DBF +:101D4000BC3008F044C02B8D3C8D4D8D5E8D2396AC +:101D50006CAD7DAD8EAD9FAD23970E94F8386B01C1 +:101D60007C01A30192016FA978AD89AD9AAD0E9463 +:101D7000F838A70196010E94A1357B016C01A301EF +:101D8000920123966CAD7DAD8EAD9FAD23970E94E1 +:101D9000F8384B015C012B8D3C8D4D8D5E8D6FA90C +:101DA00078AD89AD9AAD0E94F8389B01AC01C501B0 +:101DB000B4010E94A0352B013C01EF8DEF5FEF8F46 +:101DC000470156018B8E9C8EAD8EBE8E65C0B101D3 +:101DD00080E090E00E9448372BA13CA14DA15EA17C +:101DE0000E94F8386B017C010E949B366B8F7C8FC0 +:101DF0008D8F9E8FC701B6010E9489394B015C010E +:101E0000A9A5BAA5CD90DD90ED90FC90F7FAF094DD +:101E1000F7F8F094ADADBEAD8D919D910D90BC9154 +:101E2000A02D8F8F98A3A9A3BAA3A70196016B8DAC +:101E30007C8D8D8D9E8D0E94F8382B013C012F8D5D +:101E400038A149A15AA1C501B4010E94F8389B01EB +:101E5000AC01C301B2010E94A1352B013C01A701D5 +:101E60009601C501B4010E94F8386B017C012F8DE9 +:101E700038A149A15AA16B8D7C8D8D8D9E8D0E94BC +:101E8000F8389B01AC01C701B6010E94A0356B8FE9 +:101E90007C8F8D8F9E8F1F8EA30192016BA57CA5D9 +:101EA0008DA59EA50E94A135EFA1F8A56083718341 +:101EB000828393832B8D3C8D4D8D5E8D6FA578A98C +:101EC00089A99AA90E94A135ABADBCAD6D937D9354 +:101ED0008D939C93139727962CAD3DAD4EAD5FAD82 +:101EE0002797F80160817181828193810E94A135D9 +:101EF000D8016D937D938D939C931397BE01635F7F +:101F00007F4F88E991E00E943D3580911B0181114E +:101F10006BC0BFEF2B1A3B0A0CCF8D8984608D8B71 +:101F200080911A01823009F45FC00E946627809177 +:101F30001B01811162C0FBA1F071FF2E10921F01E5 +:101F40002BA123FB882780F90E94D02586B18072BF +:101F500090910001891749F084E00E941D1D0E94A4 +:101F6000351580E00E94D02548C0B8018EEE91E082 +:101F70000E943D3581E08093190182E00E942D1D71 +:101F80000E94351580911B01811137C080911A0183 +:101F90008111F6CF80911901813081F4FF2051F039 +:101FA0008CE0E1E0F1E0ADE0B1E001900D928A95C6 +:101FB000E1F707C085E00E941D1D03C081E080930A +:101FC0001F011092190180E00E94D0250E94351552 +:101FD0000E949D250E9477270E94D2260E9456319A +:101FE00080911F0181118CC08CE0EEEEF1E0A8E938 +:101FF000B1E001900D928A95E1F78091C80180933C +:102000008701882309F47FC00E9466278091870199 +:1020100090911A01833041F49230D1F188E00E940E +:102020002D1D0E94351534C081E0809380011092EF +:102030008401109283011092810110928601109206 +:1020400089011092880184E6809321018093220106 +:1020500080932301923091F064EA71E080E00E9465 +:10206000421A8823E1F10E94BB3140E050E0BA01FE +:1020700080E00E94C31980E00E94E60283EA92E0B9 +:102080000E94C3268AE392E00E94C3260E94EE10BB +:10209000109287012FC081E036C082E034C088E111 +:1020A00032C086E230C089E12EC084E02CC08BE1D2 +:1020B0002AC085E228C084E126C08EE124C08FE1D9 +:1020C00022C086E120C080E21EC082E21CC083E202 +:1020D0001AC084E218C080E116C08FE014C087E007 +:1020E00012C08CE0EEEEF1E0A8E9B1E001900D92B3 +:1020F0008A95E1F780E007C01A8E1BA20C942C038E +:102100000E943D027ACFC65BDF4F0FB6F894DEBF68 +:102110000FBECDBFDF91CF911F910F91FF90EF9038 +:10212000DF90CF90BF90AF909F908F907F906F90F7 +:102130005F904F903F902F9008950F931F93CF93F0 +:102140008C01C0E0F80161917191819191918F01B1 +:102150000E948E26C23019F08CE20E946C1BCF5F69 +:10216000C33081F7CF911F910F9108958CE093E0D8 +:102170000C94C326CF92DF92EF92FF92CF93DF931E +:10218000D82F6A017B01C22F84E20E946C1B8D2F25 +:102190000E949D268DE30E946C1B4C2FC701B60147 +:1021A0000E94E225DF91CF91FF90EF90DF90CF90DA +:1021B0000C94B610CF93DF93D82FC62F84E20E94E1 +:1021C0006C1B8D2F0E949D268DE30E946C1B8C2F13 +:1021D0000E949D26DF91CF910C94B6108DE50E9450 +:1021E0006C1B0C94B6103F924F925F926F927F924D +:1021F0008F929F92AF92BF92CF92DF92EF92FF9217 +:102200000F931F93CF93DF93CDB7DEB7A4970FB68D +:10221000F894DEBF0FBECDBF10910807112391F1D6 +:1022200081E080931A0189EA92E00E94C326812FFF +:102230000E949D260E94B61085EF91E0019739F02B +:10224000EFE9FFE03197F1F700C00000F7CF115040 +:10225000123030F08FB7F894109208078FBF12C079 +:1022600083EA92E00E94C32681E992E00E94C3269D +:102270000E94EE1080E10E94231D8091070784FFD9 +:10228000FCCFE8CF10910707112309F4BBC214FF5C +:1022900004C081E080931B01D0C310FFBFC18CE05C +:1022A000E1E0F1E0DE01599601900D928A95E1F7A7 +:1022B000BE01675E7F4FCE010D960E94361D8CE3F6 +:1022C0000E946C1B80911A018830E1F058F4813033 +:1022D00099F1A8F0823099F1843009F043C084EF7D +:1022E00092E03EC0803229F118F4803171F03AC09A +:1022F000803441F18038B1F58CED92E031C087E057 +:1023000093E02EC083E093E02BC080911C0187FDF9 +:1023100010C08DEF92E00E94C32680911C0180FFC7 +:1023200006C080E31AC082FF17C085FFFACF81E3A1 +:1023300014C089EF92E014C08EEE92E011C088EED6 +:1023400092E00EC082EE92E00E94C32680911C01B2 +:1023500083FFE9CF83E301C082E30E946C1B02C0CC +:102360000E94C32680915F01F82FF170BF2E80FF7D +:1023700007C080912601882319F085ED92E053C0B3 +:102380004090BC015090BD016090BE017090BF01B3 +:1023900054EA852E51E0952E9E012F5F3F4F790123 +:1023A000CE010D966C0100E0F40161917191819173 +:1023B00091914F0120853185428553850E94A13539 +:1023C000F7016083718382839383023061F4A301F8 +:1023D00092010E94A135F701608371838283938308 +:1023E000BB2019F0CACFB11011C0F7012081318193 +:1023F00042815381F60160817181828193810E94C3 +:10240000A035F60160837183828393830F5FF4E0CC +:10241000EF0EF11C24E0C20ED11C033029F6B110DE +:10242000ACCF8EEC92E00E94C326CE010D960E94A6 +:102430009D1080915F0181FF1FC089EC92E00E9496 +:10244000C3269091500680912F03981710F0815F5A +:1024500001C08150891B0E949D268CE20E946C1B4A +:102460008091970290919802981710F0805801C0BF +:102470008150891B0E949D2684EC92E00E94C32615 +:1024800080911A018C7749F06091EE067091EF0609 +:102490008091F0069091F10603C060E070E0CB01FE +:1024A0000E947F268CE20E946C1B60912701709134 +:1024B00028018091290190912A0140E00E94E225A3 +:1024C0000E942802F82E0E94721D082F86B1982FB4 +:1024D000907280910001E92EE8268F2D802B8E29A5 +:1024E00059F18FEB92E00E94C326EE2019F080E5AF +:1024F0000E946C1BFF2079F0F0FE03C088E50E946B +:102500006C1BF1FE03C089E50E946C1BF2FE03C048 +:102510008AE50E946C1B002379F000FF03C082E56E +:102520000E946C1B01FF03C088E40E946C1B02FF29 +:1025300003C083E50E946C1B80912601882321F053 +:1025400081508093260118C080911A018C7711F078 +:102550008DE101C089E080932601809125018111E0 +:1025600003C081E08093250189EB92E00E94C3269D +:10257000CE0101960E949D1000912501002321F0BB +:1025800001500093250142C080911A018C7711F00F +:1025900083E101C089E08093250184EB92E00E94F1 +:1025A000C326809121010E949D268CE20E946C1B13 +:1025B000809122010E949D268CE20E946C1B8091DA +:1025C00023010E949D268091B00087FF05C02D9BAE +:1025D00002C002E001C001E0439B03C040E4F42ECE +:1025E00003C0002399F0F12C80EB92E00E94C326F7 +:1025F000002339F0013011F483E501C083E40E9427 +:102600006C1BFF2019F086E40E946C1B8EE30E9475 +:102610006C1B0E94B61081E00E94231D812F887ED2 +:1026200009F467C080911A01982F937009F050C087 +:102630008872A1F080911C01807C81F40E94792530 +:1026400082E080931E0180911A01803239F417FDD7 +:10265000F2C180911C01806880931C0180911A0155 +:10266000811103C091E090931C0116FF07C085FD06 +:1026700005C090911C01906490931C0113FF05C04C +:10268000807E19F480E180931A0115FF21C083EA4E +:1026900092E00E94C3268FE492E00E94C3260E942B +:1026A000EE1080911C0187FD0EC090911A019034AC +:1026B00039F483FFBCC1837E826080931C01B7C163 +:1026C000903809F0B4C180911C01806280931C0194 +:1026D00017FF0CC080911A01813029F480911C01F0 +:1026E000856080931C0180E880931A0188EE0E9427 +:1026F000231D11FF44C0812F8876F1F580911A01C6 +:10270000803471F480911C0185FD0AC084FF03C0F0 +:1027100010921A0105C082FF03C0886080931C01DB +:1027200080911A01882381F084FF26C090911C01BA +:1027300090FF22C0803141F480912401882321F050 +:1027400088608093240118C010921E010E945627B1 +:10275000892B71F080911C0186FD0AC010921C012A +:1027600088E080931A010E94BB1D0E940E1904C0CC +:1027700010921C0110921A0182E00E94231D12FF88 +:1027800041C080911A01807D90911C018823D9F06D +:1027900080911D01811117C097FD15C00E947925F8 +:1027A00080912F0380932E030E94882780911E0121 +:1027B00081FF05C090911C01916090931C01897F5D +:1027C00080931E011CC097FF0AC010921E010E9438 +:1027D00077270E949D250E943D020E94D22680916B +:1027E0001C0185FF08C08F77816080931C0180E405 +:1027F00080931A0104C010921C0110921A0184E007 +:102800000E94231D90910907992309F4ABC08FB74B +:10281000F894109209078FBF4091210190FD02C0EA +:10282000842F01C084E691FD865F92FD8A5093FD5E +:102830008F5F94FD8150893C08F088EC8A3008F461 +:102840008AE03091220195FD02C0232F01C024E6C9 +:1028500096FD22E397FD29E1481303C0231709F4ED +:1028600081C08093210120932201109225011091B3 +:102870002F033090500689E9D82E96E7E92E26E9F5 +:10288000F22E0EE732E3432E131509F457C0812EC2 +:10289000912C489CC001499C900D1124FC01E05DE5 +:1028A000FC4F5F01CF010E94E326562E672E782E43 +:1028B000C92E2D2D3E2D4F2D502F0E94B8381816A1 +:1028C0004CF42D2D3E2D4F2D502F6D2D7E2D8F2D07 +:1028D000902F08C0252D362D472D5C2D652D762D8A +:1028E000872D9C2D0E94F838F501668B778B808FA1 +:1028F000918F489CC001499C900D11249C01205D42 +:102900003C4F7901F90182A093A0A4A0B5A0A50134 +:10291000940166897789808D918D0E94B838181648 +:102920002CF4F701868A978AA08EB18E1F5F103132 +:1029300009F410E0D52C73010C2DA6CF8D2D9E2D02 +:10294000AF2DB02F8093120290931302A093140224 +:10295000B09315020E94792580912F0380932E0356 +:102960000E94882710910A07112309F459C08FB7D4 +:10297000F89410920A078FBF9091230110FD02C0B6 +:10298000892F01C084E611FD865F12FD8A5013FD78 +:102990008F5F14FD8150893C08F088EC8A3008F480 +:1029A0008AE09817D1F08093230180911A01811158 +:1029B0000DC040918B0150918C0160918D017091FF +:1029C0008E01809189010E94C31905C080911E016A +:1029D000886080931E011092250180911A0115FFD5 +:1029E0000DC0803159F490912401911102C092E000 +:1029F00003C090FF03C0946090932401107C81F089 +:102A0000882311F0887361F01091880116FF02C0CD +:102A10001F7B01C01064812F0E94E6021093880181 +:102A200080911A018C7F49F00E94BB1D06C080E492 +:102A300080931A0148CE80E218CEA4960FB6F8947F +:102A4000DEBF0FBECDBFDF91CF911F910F91FF90E1 +:102A5000EF90DF90CF90BF90AF909F908F907F903E +:102A60006F905F904F903F900895CF92DF92EF92DA +:102A7000FF921F93CF93DF930E94F31080911C016C +:102A8000882309F4FEC00E945627009771F4C09174 +:102A9000890180918801C82BC0908B01D0908C0156 +:102AA000E0908D01F0908E010EC0FC01C189C073D1 +:102AB000439B02C020E401C020E0C22BFC01C6A45D +:102AC000D7A4E0A8F1A88091700181FF03C080E243 +:102AD0000E940B1DDC2FD07311E0C07C80911C0183 +:102AE000882309F4CEC090911B019111CAC080FFC8 +:102AF000C5C090911A01292F207C09F474C082FD71 +:102B000012C01092240140E050E0BA0180E00E941F +:102B1000C31980E00E94E60280911C018D7F8460D1 +:102B200080931C01ABC09038E1F483EA92E00E94EC +:102B3000C3268CE092E00E94C3260E94EE1040E083 +:102B400050E0BA0180E00E94C31980E00E94E602D2 +:102B50000E94901680911B01811193C00E94F31076 +:102B6000F9CF903419F48F7D80931C0180911C0162 +:102B700083FF84C0909189019923C1F081FD16C023 +:102B80008091700181FF06C080911E018860809352 +:102B90001E010CC0B701A6018D2F0E94C31941E090 +:102BA00060E070E080E890E40E94D5288091880180 +:102BB000882371F080911C0181FD0AC08C2F0E9436 +:102BC000E60241E060E070E080E89FE30E94D528E3 +:102BD00080911C0181FD52C0806180931C0182E0C4 +:102BE0000E942D1D4BC0809124018823C9F181FFD3 +:102BF0000DC0809189018823B1F040E050E0BA0116 +:102C000080E00E94C3191093240138C08C70B1F188 +:102C10008091890181110AC08091240183FF03C042 +:102C200082E00E942D1D1092240128C083EA92E0C8 +:102C30000E94C32685E192E00E94C3260E94EE1006 +:102C40008091700181FF06C080911E018860809391 +:102C50001E01E2CFB701A6018D2F0E94C319DCCF60 +:102C600080911E0183FF0AC0B701A6018D2F0E942B +:102C7000C31980911E01877F80931E010E94F3106B +:102C80002DCFDF91CF911F91FF90EF90DF90CF90EC +:102C900008950E945627892B19F082E00C942D1D6F +:102CA00008958093B300811104C08091B0008F77A4 +:102CB00003C08091B00080688093B0000895809137 +:102CC0005C01682F20915D01422F982F917080FD4B +:102CD00094E0822F817020FD80E261FD986041FDCB +:102CE000806462FD906142FD806890930803809348 +:102CF000090308951F920F920FB60F9211248F931C +:102D00009F938BB1909108039C71837E892B8BB923 +:102D100015BC9F918F910F900FBE0F901F9018952B +:102D200080916F008D7F80936F0080918100887FFC +:102D300081608093810010920A0380915E019091DE +:102D40001A018F3F39F420910807211103C09038F0 +:102D500081F402C0943069F090E0009741F0EFE90F +:102D6000FFE03197F1F700C000000197F6CF81E056 +:102D700001C080E09091700192FF02C091E089272C +:102D8000882311F0289A0895289808951F920F9289 +:102D90000FB60F9211242F933F934F935F936F932E +:102DA0007F938F939F93AF93BF93EF93FF93809104 +:102DB0000A03811122C28BB190911A03907E8F7108 +:102DC000892B8BB98BB1837E90911903892B8BB999 +:102DD0008091180386BD82E085BD81E080930A035F +:102DE000789480912C0390912D03892B09F0BFC01A +:102DF0008091510690917C06981709F4A4C0E09147 +:102E000051062E2F30E087E0E89FF0011124EE5AA2 +:102E1000F94FF0932D03E0932C03828193819093DB +:102E2000890080938800808191819093280380930A +:102E30002703E481809129038E1761F1E093290330 +:102E400082E1E89FF0011124E358F94FF0932B033E +:102E5000E0932A0384859585A685B785B695A795C1 +:102E6000979587958093130390931403A09315036C +:102E7000B093160380930F0390931003A093110354 +:102E8000B093120380930B0390930C03A0930D0354 +:102E9000B0930E03A0912A03B0912B0350969C91FE +:102EA000509780910903892780931A0387E0829FB6 +:102EB000F001839FF00D1124EE5AF94F25814D91B9 +:102EC0005D916D917C911397022E04C07695679564 +:102ED000579547950A94D2F740931B0350931C03D0 +:102EE00060931D0370931E0314964D915D916D9137 +:102EF0007C911797022E04C0769567955795479554 +:102F00000A94D2F740931F03509320036093210348 +:102F10007093220318968D919D910D90BC91A02DD8 +:102F200004C0B695A795979587952A95D2F7809373 +:102F3000230390932403A0932503B0932603868153 +:102F40000E94511614C00E949016E0912A03F0913D +:102F50002B038189882339F01092B3008091B0004F +:102F60008F778093B00084E00E942D1D46C1809130 +:102F700019018130B1F486B18072909100018917F6 +:102F800081F0109219018CE0E1E0F1E0ADE0B1E0F8 +:102F900001900D928A95E1F78091070780648093F4 +:102FA00007071092190340910B0350910C03609195 +:102FB0000D0370910E0380911B0390911C03A0914F +:102FC0001D03B0911E03840F951FA61FB71F80938A +:102FD0000B0390930C03A0930D03B0930E03E091A9 +:102FE0002A03F0912B03448555856685778548171C +:102FF00059076A077B0768F524E020931903448585 +:10300000558566857785841B950BA60BB70B80933A +:103010000B0390930C03A0930D03B0930E03208930 +:103020008091010190910201A0910301B0910401EE +:1030300025FF04C00197A109B10903C00196A11D94 +:10304000B11D8093010190930201A0930301B093FD +:10305000040140910F03509110036091110370918E +:10306000120380911F0390912003A0912103B0913E +:103070002203840F951FA61FB71F80930F03909301 +:103080001003A0931103B093120344855585668500 +:103090007785481759076A077B0778F52091190348 +:1030A0002860209319034485558566857785841BA0 +:1030B000950BA60BB70B80930F0390931003A0936F +:1030C0001103B093120320898091050190910601AC +:1030D000A0910701B091080126FF04C00197A10942 +:1030E000B10903C00196A11DB11D80930501909304 +:1030F0000601A0930701B09308014091130350917A +:10310000140360911503709116038091230390912D +:103110002403A0912503B0912603840F951FA61FB9 +:10312000B71F8093130390931403A0931503B093D8 +:1031300016034485558566857785481759076A07BC +:103140007B0778F5209119032061209319034485AA +:10315000558566857785841B950BA60BB70B8093E9 +:10316000130390931403A0931503B09316032089BF +:103170008091090190910A01A0910B01B0910C017D +:1031800027FF04C00197A109B10903C00196A11D41 +:10319000B11D8093090190930A01A0930B01B09394 +:1031A0000C0180911A01843039F4909119038091B7 +:1031B000200189238093190380912703909128038C +:1031C00001979093280380932703892B69F4109229 +:1031D0002D0310922C03809151068F5F809351062E +:1031E000863011F4109251069091190380910803D2 +:1031F00089278093190310920A03FF91EF91BF91E1 +:10320000AF919F918F917F916F915F914F913F917E +:103210002F910F900FBE0F901F9018958091700105 +:1032200082FF02C0289A01C02898809108038093E9 +:10323000190380915B01880F845081958093180356 +:1032400080916F00826080936F0008954F925F922B +:103250006F927F928F929F92AF92BF92CF92DF92A6 +:10326000EF92FF926B017C0180906C0190906D0158 +:10327000A0906E01B0906F0140906801509069017C +:1032800060906A0170906B01A3019201C501B401C5 +:103290000E94B83887FF19C06091230170E080E078 +:1032A00090E00E944A372AE037ED43E25CE30E9457 +:1032B000F838A70196010E94F8386B017C01A30140 +:1032C00092010E94B83887FD0AC0409227015092AF +:1032D00028016092290170922A018FEF47C0A50151 +:1032E0009401C701B6010E9496361816E4F020E05A +:1032F00030E0A901C701B6010E949636811109C0CC +:1033000010922701109228011092290110922A018F +:103310002DC08092270190922801A0922901B0929D +:103320002A0181E023C0C0922701D0922801E092B7 +:103330002901F0922A01A5019401C701B6010E945A +:10334000A03520910403309105034091060350916C +:1033500007030E94F8380E94853720E030E040E8FB +:103360005FE30E94A1350E941937862FFF90EF90EE +:10337000DF90CF90BF90AF909F908F907F906F9095 +:103380005F904F90089590911B01911126C081117B +:103390000EC010922701109228011092290110925C +:1033A0002A018091B0008F778093B00014C08031E3 +:1033B00011F42D9801C02D9A9091700191FF05C0D4 +:1033C000803219F440E050E0BA01CB01BA010E940A +:1033D00026190E945116109225010895CF93DF936C +:1033E000239AC0EBD0E083E0888384E08093B1002F +:1033F000259A20916C0130916D0140916E015091A0 +:103400006F01609168017091690180916A019091EA +:103410006B010E94A0359B01AC0160E070E08EE77B +:1034200093E40E94A0366093040370930503809395 +:1034300006039093070388818F778883DF91CF916C +:1034400008956AE080E090E00E94870245E550E040 +:103450006BE271E081E090E00C94A9020F931F935E +:10346000CF93C82F8B010E9466272DE0C29FC00119 +:1034700011244CE050E0B8019E5FCF911F910F9155 +:103480000C94A9021F93CF93DF93182FEB018DE0CB +:10349000189FB00111247E5F4CE050E0CE010E94E5 +:1034A0004302892B59F48CE0FE0111928A95E9F7C9 +:1034B000BE01812F0E942E1A80E001C081E0DF91C1 +:1034C000CF911F910895EF92FF920F931F93CF9387 +:1034D000DF93CDB7DEB72C970FB6F894DEBF0FBEE3 +:1034E000CDBF182F80FF0BC085E5ECE1F3E0ABE228 +:1034F000B1E005900D928A95E1F70E94211A11FF23 +:1035000010C0CE0101967C018CE0F70111928A95E2 +:10351000E9F700E0B701802F0E942E1A0F5F0830F4 +:10352000C9F712FF14C060E080E093E00E948702B8 +:1035300060E081E093E00E94870260E081E593E033 +:103540000E94870260E082E593E00E94870213FFF9 +:103550000AC060E08EEA93E00E94870260E08FEA92 +:1035600093E00E9487022C960FB6F894DEBF0FBE40 +:10357000CDBFDF91CF911F910F91FF90EF900895F4 +:103580001F920F920FB60F9211242F933F934F93D8 +:103590005F936F937F938F939F93AF93BF93EF93BB +:1035A000FF93E091C600E13271F028F4E83179F43C +:1035B0000E94042956C0EF3321F0EE3741F482E037 +:1035C00003C081E001C088E00E942D1D4AC0E7FFD2 +:1035D00037C08E2F90E0FC01E458F109ED31F10580 +:1035E00008F03FC0E659FF4F0C94433A80E2ECCF1D +:1035F00080911A0185FF35C080E4E6CF81E00DC0DF +:1036000082E00BC084E009C088E007C080E105C00B +:1036100080E203C080E401C080E80E94141D21C044 +:1036200081E00BC082E009C084E007C088E005C0EB +:1036300080E103C080E201C080E40E940B1D11C044 +:10364000A091980281E08A0F813809F480E090917E +:103650009702891731F0B0E0AA5EBD4FEC938093DA +:103660009802FF91EF91BF91AF919F918F917F91C0 +:103670006F915F914F913F912F910F900FBE0F90DF +:103680001F9018951F920F920FB60F9211248F93CF +:103690009F93EF93FF9380910303E82FF0E0E656AA +:1036A000FD4F90819093C6008F5F893609F480E0CA +:1036B0008093030390919902891305C08091C10002 +:1036C0008F7D8093C100FF91EF919F918F910F901B +:1036D0000FBE0F901F901895E091990291E09E0FF8 +:1036E000993631F490E004C02091070724FD0FC003 +:1036F000209103032917C1F3F0E0E656FD4F8083C4 +:10370000909399028091C10080628093C1000895D6 +:10371000CF93C82F85E193E00E94C3268C2F0E948F +:103720009D26CF910C94B610EF92FF920F931F93AA +:10373000CF93DF9360915B0170E080E00E94DA102C +:1037400060915E0170E081E00E94DA1060915C019E +:1037500070E082E00E94DA1060915D0170E083E029 +:103760000E94DA106091700162FB662760F970E0D8 +:1037700084E00E94DA106091700166FB662760F9B0 +:1037800070E085E00E94DA1080917001082E000C34 +:10379000990B692F661F6627661F70E086E00E94FE +:1037A000DA1060915F0170E08AE00E94DA104091C7 +:1037B000600150916101609162017091630123E0A9 +:1037C0008BE00E94BA1040916401509165016091B4 +:1037D00066017091670123E08CE00E94BA1060914D +:1037E0007001617070E08DE00E94DA1060917001EC +:1037F00065FB662760F970E084E10E94DA10609151 +:10380000700163FB662760F970E085E10E94DA10C1 +:10381000609170016295617070E086E10E94DA103B +:103820006091710170E087E10E94DA1040917201AD +:1038300050917301609174017091750123E088E1EA +:103840000E94BA1040917601509177016091780101 +:103850007091790123E089E10E94BA1060917A01A8 +:1038600070917B018AE10E94DA1040917C015091B5 +:103870007D0160917E0170917F0123E08BE10E94C8 +:10388000BA10409168015091690160916A0170918C +:103890006B0120E08EE10E94BA1040916C015091C2 +:1038A0006D0160916E0170916F0120E08FE10E94C7 +:1038B000BA10609170016695617070E080E20E94BC +:1038C000DA10D4E6F12C0BE211E083E0E82EED0EE5 +:1038D000CD2F82E0F81691F0E3E0FE16E9F0F1E07A +:1038E000FF1631F0F80140815181628173811AC065 +:1038F000F801448555856685778514C020E030E061 +:1039000041E655E4F801608D718D828D938D0E94A2 +:10391000A036AB01BC0106C0F80144A155A166A1C7 +:1039200077A1705823E08C2F0E94BA100C5F1F4FB4 +:10393000CF5FEC12CECFD65FF394DC3821F6DF9167 +:10394000CF911F910F91FF90EF900895811104C0C6 +:1039500081E793E00C94C3260C94881BCF93DF93EC +:10396000C1E1D7E08991882319F00E946C1BFACF3E +:10397000DF91CF910895CF93DF9321E5829FC0011E +:103980001124EC01DD5F40E550E0BE0181E197E0EC +:103990000E944302892B69F4109211070E94662746 +:1039A00040E550E061E177E0CE010E94A90280E0AD +:1039B00001C081E0DF91CF910895CF93DF93C0E004 +:1039C0008C2F0E94BB1C81110EC0109211078EE338 +:1039D0000E946C1B0E94AE1C8AE30E946C1B87E055 +:1039E0000E94881B12C080911107882371F00E94E9 +:1039F000F202D82F8EE30E946C1B0E94AE1C8AE359 +:103A00000E946C1B8D2F0E94A61CCF5FC230C1F696 +:103A1000DF91CF9108959FB7F89420910A07822BE8 +:103A200080930A079FBF08959FB7F89420910907D4 +:103A3000822B809309079FBF08959FB7F8948093C6 +:103A400008079FBF08952FB7F894909107078095B6 +:103A50008923809307072FBF08959FB7F89420917B +:103A60000707822B809307079FBF08958F929F922D +:103A7000AF92BF92CF92DF92EF92FF920F931F937C +:103A8000CF93DF93EB012BE2E22E21E0F22E8C01AB +:103A90006B018CE0C80ED11C699179918991999143 +:103AA000F70181909190A190B1907F010E944A37D7 +:103AB000A50194010E94A036F8016193719381934E +:103AC00091938F01CC15DD0539F7DF91CF911F91CF +:103AD0000F91FF90EF90DF90CF90BF90AF909F90AD +:103AE0008F90089596B1892F877049F0892F80951E +:103AF000817091FF826092FD03C08460089580E030 +:103B000008951F920F920FB60F9211242F933F9397 +:103B10004F935F936F937F938F939F93AF93BF93D5 +:103B2000CF93EF93FF930E94721DC82F882389F0D3 +:103B300080FD0E940429C2FF05C0809107078260B2 +:103B400080930707C1FF05C08091070788608093B5 +:103B50000707FF91EF91CF91BF91AF919F918F9107 +:103B60007F916F915F914F913F912F910F900FBE79 +:103B70000F901F9018952F923F924F925F926F92E5 +:103B80007F928F929F92AF92BF92CF92DF92EF92ED +:103B9000FF920F931F93CF93DF93CDB7DEB7EC97D0 +:103BA0000FB6F894DEBF0FBECDBF80911E0180FD21 +:103BB00087C79091510680910B07981709F480C729 +:103BC00080910E0790910F07892B09F015C3109172 +:103BD0001E0112FF09C08091500622E3289FC001F8 +:103BE0001124805D9C4F02C00E94562790930F07BE +:103BF00080930E0720900E0730900F072114310498 +:103C000009F45EC70091D806802F817000FF03C0C1 +:103C10001092D806EAC09091D7069F5F953009F0C0 +:103C2000892F8093D706E82EF12C32E13E9DF001DA +:103C30003F9DF00D1124E358F94FF0930D07E093E9 +:103C40000C07D10150969C915097908BE2E18E9F8A +:103C5000C001112420E030E04D915D916D917D9186 +:103C6000F901E80FF91FE358F94F689412F8440F6F +:103C7000551F661F771F1694D1F7408351836283C7 +:103C800073832C5F3F4F2C30310531F722E12E9D9D +:103C9000F0012F9DF00D11249F012358394FF101A0 +:103CA00084859585A685B78543E0880F991FAA1F4F +:103CB000BB1F4A95D1F7F90184879587A687B787F7 +:103CC000D1011C966D917D918D919C911F970E94C1 +:103CD00048376093DD067093DE068093DF0690938D +:103CE000E006F101268D378D40A151A10E94A0363A +:103CF0009B01AC016093E1067093E2068093E306BA +:103D00009093E40660E070E080EA9FE30E94A036B2 +:103D10006093E5067093E6068093E7069093E806C5 +:103D20001092D9061092DA061092DB061092DC0689 +:103D300011FD02C003FF1FC06091F6067091F706E7 +:103D40008091F8069091F9066093EE067093EF0665 +:103D50008093F0069093F1069B01AC010E94F83825 +:103D6000D10152966D937D938D939C935597077FC8 +:103D70000093D8060FC0F1016289738984899589FF +:103D80000E9497396093EE067093EF068093F006D9 +:103D90009093F106F2E1FE9DC001FF9D900D11246C +:103DA0009C012358394F7901D90151961C92809179 +:103DB000700181FF1AC0F101818985FF16C022A51B +:103DC00033A544A555A560E070E080E89FE30E941C +:103DD000A0366093020770930307809304079093C3 +:103DE0000507E1E0D7015196EC931092EA06109294 +:103DF000EB061092EC061092ED06D1015A962D9129 +:103E00003D914D915C915D9729833A834B835C830F +:103E100060E070E080E09FE30E94A0364B015C010F +:103E2000F101468C578C60A071A011FF4BC0F2E0ED +:103E3000F093E906D1015296CD90DD90ED90FC9083 +:103E40005597A70196010E94F8389B01AC01C30168 +:103E5000B2010E94A0354B015C0120E030E0A901D5 +:103E60000E94963687FF1DC029813A814B815C8173 +:103E7000CA01B9010E94A135A30192010E94F8383C +:103E80009B01AC01C701B6010E94A0350E94973981 +:103E90006093F6067093F7068093F8069093F90600 +:103EA000A8C18092EA069092EB06A092EC06B0922E +:103EB000ED061092F6061092F7061092F806109290 +:103EC000F90697C11092E9064092FA065092FB0655 +:103ED0006092FC067092FD0612FF0CC01092F6066E +:103EE0001092F7061092F8061092F906C12CD12C08 +:103EF000760124C0E0912F03EF5FE03109F4E0E0A8 +:103F0000809150068E1759F0B2E3BE9FF001112444 +:103F1000E05DFC4FC288D388E488F58803C0C12CDB +:103F2000D12C7601C701B6010E9497396093F6063D +:103F30007093F7068093F8069093F906C1010E94EA +:103F4000E326698B7A8B8B8B9C8B9B01AC010E9447 +:103F5000F83869877A878B879C87D10152962D9193 +:103F60003D914D915C9155972D833E834F835887AA +:103F70000E94963687FF6CC029853A854B855C8503 +:103F80006D817E818F8198850E94A035A501940165 +:103F90000E94F8389B01AC01C301B2010E94A03518 +:103FA0006093FA067093FB068093FC069093FD06DF +:103FB00020E030E0A9010E94963618163CF1B2E0EC +:103FC000B093E90629813A814B815C81CA01B9012C +:103FD0000E94A135A30192010E94F8389B01AC0117 +:103FE0006D817E818F8198850E94A0350E949739CE +:103FF0006093F6067093F7068093F8069093F9069F +:104000008091D80688608093D806F3C0A7019601F6 +:1040100069857A858B859C850E94A035A5019401D0 +:104020000E94F8386093FE067093FF0680930007A5 +:104030009093010729893A894B895C892093F2067C +:104040003093F3064093F4065093F50633E0B6C080 +:10405000A70196016D817E818F8198850E94A03590 +:10406000A50194010E94F838A30192010E94A13594 +:1040700020E030E040E05FE30E94F8386D877E8703 +:104080008F87988B20E030E0A9010E94B83818167D +:104090000CF097C02D853E854F855889C301B2012C +:1040A0000E94B83818160CF088C0A70196016985DF +:1040B0007A858B859C850E94A035A50194010E947C +:1040C000F8389B01AC016093FE067093FF06809365 +:1040D0000007909301076D857E858F8598890E94E2 +:1040E000B8381816CCF589899A89AB89BC89809330 +:1040F000F2069093F306A093F406B093F5062D8193 +:104100003E814F81588569857A858B859C850E9483 +:104110009636811104C091E09093E9066AC02D8122 +:104120003E814F81588569857A858B859C850E9463 +:10413000A035A50194010E94F8389B01AC01C30190 +:10414000B2010E94A0356093FA067093FB0680933B +:10415000FC069093FD064DC02D853E854F85588900 +:104160002093FA063093FB064093FC065093FD061D +:104170002093FE063093FF064093000750930107FB +:1041800029813A814B815C81CA01B9010E94A13524 +:104190002D853E854F8558890E94F838A7019601E4 +:1041A0000E94A1350E9497396093F2067093F3063E +:1041B0008093F4069093F5061CC032E03093E90634 +:1041C00018C01092FA061092FB061092FC0610928C +:1041D000FD068091F6069091F706A091F806B09141 +:1041E000F9068093F2069093F306A093F406B09339 +:1041F000F506186010931E0180917C06482F50E050 +:104200005A8B498B87E0849FF001859FF00D112424 +:10421000EE5AF94F8091D7068483A0910E07B09192 +:104220000F07BCAFABAF5E96BC91BAA3EBADFCADD4 +:10423000F78DFBA3ABADBCAD9096BC91BCA3EBAD31 +:10424000FCADF1A1FDA32091E5063091E606409179 +:10425000E7065091E8066AA17BA18B2F9F2F0E9451 +:10426000A0356EA77FA788AB99AB20E030E0A9010D +:104270000E94963687FF04C01EA61FA618AA19AA78 +:104280002091F2062E8B3091F3063F8B4091F4067D +:10429000488F5091F506598F8091FA068A8F909138 +:1042A000FB069B8FA091FC06AC8FB091FD06BD8FE5 +:1042B000E091EE06E983F091EF06FD832091F00690 +:1042C00029873091F1063D874091FE064EA350911B +:1042D000FF065FA38091000788A79091010799A727 +:1042E000A091E906AD8BB091EA06BAA7E091EB0682 +:1042F000EBA7F091EC06FCA72091ED062DA73091DD +:10430000F6063BAB4091F7064CAB5091F8065DAB1F +:104310008091F9068EAB2EA13FA148A5592F6A8D39 +:104320007B8D8C8D9D8D0E949636811103C092E00D +:104330009AAB02C0A1E0AAAB3AA02BA01CA10DA190 +:104340008EE3C82E83ECD82E8EE2E82E89E3F82E79 +:10435000412C512C3201CE8EDF8EE8A2F9A23D898C +:10436000313009F4F2C0ABADBCAD313008F47BC0E4 +:10437000333009F020C15A962D913D914D915C91B9 +:104380005D97C701B6010E94F8384B015C012E8988 +:104390003F89488D598D69817D8189859D850E94E0 +:1043A000A0359B01AC01C501B4010E94B83887FD5E +:1043B00031C02A8D3B8D4C8D5D8D6AA17BA18CA176 +:1043C0009DA10E94A0359B01AC010E94A1356B010B +:1043D0007C0129813D8149855D856E897F89888D34 +:1043E000998D0E94A1359B01AC01C701B6010E94C5 +:1043F000A0366B017C01BE89B983EF89ED83F88D0E +:10440000F987298D2D873A8C2B8C1C8D0D8D31E0F1 +:104410003D8B51C120E030E040E05FE3C501B401D5 +:104420000E94F8389B01AC0169817D8189859D8559 +:104430000E94A035A70196010E94F8389B01AC01AB +:10444000632D722D812F902F0E94A035362E272E9E +:10445000182F092FA501940169817D8189859D858A +:104460000E94A0356DC05A962D913D914D915C9161 +:104470005D97C701B6010E94F8384B015C0120E04E +:1044800030E040E05FE30E94F83829813D814985B2 +:104490005D850E94A135A70196010E94F8389B0115 +:1044A000AC01632D722D812F902F0E94A035362EE6 +:1044B000272E182F092F262F372F482F592F6A8D77 +:1044C0007B8D8C8D9D8D0E94B83818168CF52A8DA9 +:1044D0003B8D4C8D5D8D6AA17BA18CA19DA10E941D +:1044E000A0359B01AC010E94A1356B017C012981A3 +:1044F0003D8149855D856E897F89888D998D0E9472 +:10450000A1359B01AC01C701B6010E94A0366B0129 +:104510007C01BAA9BD8BEE89E983FF89FD83288DD3 +:104520002987398D3D873A8C2B8C1C8D0D8DC3C00E +:10453000A501940169817D8189859D850E94A135B0 +:1045400069837D8389879D87B6C02E893F89488D81 +:10455000598DC701B6010E94F8389B01AC01632D4B +:10456000722D812F902F0E94A0355B014C019B0181 +:10457000AC016EA17FA188A599A50E94B838181634 +:104580000CF095C02EA13FA148A559A5632D722D11 +:10459000812F902F0E94A0352E893F89488D598DFB +:1045A0000E94A0366B017C013EA02FA018A509A592 +:1045B00042E04D8B80C05A962D913D914D915C917A +:1045C0005D97C701B6010E94F8384B015C01298153 +:1045D0003D8149855D850E94963687FF39C020E080 +:1045E00030E040E05FE3C501B4010E94F8389B0170 +:1045F000AC0169817D8189859D850E94A035A701D7 +:1046000096010E94F8389B01AC01632D722D812F19 +:10461000902F0E94A0356FAB78AF89AF9AAF2AA5D3 +:104620003BA54CA55DA50E94B83818168CF4A501D1 +:10463000940169817D8189859D850E94A03569836A +:104640007D8389879D873FA828AC19AD0AAD33C00B +:104650002AA53BA54CA55DA5632D722D812F902F1A +:104660000E94A0359B01AC010E94A1356B017C0129 +:1046700029813D8149855D856BA97CA98DA99EA96C +:104680000E94A1359B01AC01C701B6010E94A03672 +:104690006B017C01BBA9B983ECA9ED83FDA9F98766 +:1046A0002EA92D873AA42BA41CA50DA504C03A2C35 +:1046B0002B2C182D092DA7019601C301B2010E94D0 +:1046C000A1352B013C012E8D3F8D48A159A10E949F +:1046D000963687FF07C0A30192016E8D7F8D88A15A +:1046E00099A11CC02EA53FA548A959A9632D722DDB +:1046F000812F902F0E94B838181684F52EE333ECE2 +:104700004EE259E36E8D7F8D88A199A10E94A1355B +:104710006E8F7F8F88A399A3A30192010E94A03579 +:104720006B017C01232D322D412F502F6AA57BA5D3 +:104730008CA59DA50E94963687FD11CE89819D810D +:10474000A985BD858093EE069093EF06A093F006B1 +:10475000B093F1063D893093E9060FC089819D81B0 +:10476000A985BD858093EE069093EF06A093F00691 +:10477000B093F1064D894093E906E0910C07F09162 +:104780000D079189911104C080911E0183FF3FC0E4 +:10479000ABADBCAD51968C915197807349F19E960B +:1047A000CD90DD90ED90FC90D1979923D1F02091A0 +:1047B000020730910307409104075091050760916B +:1047C000EE067091EF068091F0069091F1060E943E +:1047D000F8389B01AC01C701B6010E94F8386B01A3 +:1047E0007C01C701B6010E942619809306070AC002 +:1047F00010922701109228011092290110922A018B +:104800001092060780911E01877F80931E0147E06A +:1048100029893A89429FF001439FF00D1124EE5AF5 +:10482000F94FFA87E9878091060786832091E10690 +:104830003091E2064091E3065091E406632D722D1B +:10484000812F902F0E94F83869837A838B839C8311 +:104850000E947F366B017C016091DD067091DE065F +:104860008091DF069091E0060E947F364B015C014B +:10487000A70196010E94A0350E9419376D837E839F +:104880008F839887ED81FE81A985BA85ED93FC938E +:10489000EF2B41F480911E0181FF04C08160809361 +:1048A0001E010EC12091D9063091DA064091DB0637 +:1048B0005091DC06C301B2010E94A1352B013C01DD +:1048C00029813A814B815C81C501B4010E94A035E8 +:1048D0009B01AC01C301B2010E94A0364B015C01F7 +:1048E00020EC31EE44E65EE40E94F8380E947F3608 +:1048F0000E941937603D37E073078105910560F428 +:10490000A7E049895A89A49FF001A59FF00D1124C1 +:10491000EE5AF94F158253C0603ABFE07B0781051C +:10492000910560F447E029893A89429FF001439F4D +:10493000F00D1124EE5AF94F51E011C06034AFE18F +:104940007A078105910568F447E029893A89429FF1 +:10495000F001439FF00D1124EE5AF94F52E05583B8 +:104960000CC027E0A989BA892A9FF0012B9FF00D7E +:104970001124EE5AF94F33E03583A7E049895A896B +:10498000A49FF001A59FF00D1124EE5AF94F258147 +:10499000022E04C096958795779567950A94D2F76D +:1049A0004D815E8102C0440F551F2A95E2F7518365 +:1049B00040836115710551E08507910568F427E092 +:1049C000A989BA892A9FF0012B9FF00D1124EE5A74 +:1049D000F94F7383628304C04FEF5FEF53834283C9 +:1049E00080910B0780937C068F5F863019F080934F +:1049F0000B0702C010920B07E0910E07F0910F0712 +:104A0000832D922DA12FB02F868F978FA0A3B1A3B6 +:104A1000C092DD06D092DE06E092DF06F092E0065C +:104A200029813A814B815C81C701B6010E94A03582 +:104A3000A50194010E94F8386093D9067093DA06B4 +:104A40008093DB069093DC062091EA063091EB061A +:104A50004091EC065091ED06632D722D812F902F21 +:104A60000E9496368111A5C820E030E0A901632D8F +:104A7000722D812F902F0E94B83890911E01181628 +:104A800014F092FF04C0916090931E0119C010921F +:104A90000F0710920E0790912F03809150068917EF +:104AA00009F487C881E0890F803109F480E0209102 +:104AB0002E03921302C080932E0380932F0379C894 +:104AC000EC960FB6F894DEBF0FBECDBFDF91CF914D +:104AD0001F910F91FF90EF90DF90CF90BF90AF901C +:104AE0009F908F907F906F905F904F903F902F900E +:104AF0000895CF93DF93C0910E07D0910F072097B1 +:104B0000C9F08091D80681608093D8066091EE0646 +:104B10007091EF068091F0069091F1069B01AC0137 +:104B20000E94F8386A8B7B8B8C8B9D8B10920F07C1 +:104B300010920E07DF91CF910895CF93DF930E94DB +:104B4000901680E3E7EDF6E0DF011D928A95E9F724 +:104B5000CBE0D3E083E2FE0111928A95E9F710924F +:104B60000F0710920E071092510610927C0681E0FA +:104B700080930B0710920A030E945F16809109032D +:104B80008F878BB1837E90910803892B8BB98BB172 +:104B90008F7190910903892B8BB9DF91CF91089583 +:104BA000109200019091700197FD03C090E29093E4 +:104BB0000001882331F09091000180E289278093E1 +:104BC000000108958F929F92AF92BF92CF92DF9291 +:104BD000EF92FF920F931F93CF93DF93CDB7DEB782 +:104BE0002D970FB6F894DEBF0FBECDBF6B017C01D1 +:104BF000042F20E030E0A9010E94963687FF07C00D +:104C00008DE20E946C1BF7FAF094F7F8F094102FE5 +:104C1000123060F020E030E048EC52E4C701B60109 +:104C20000E94F8386B017C011250F2CF00FF0AC0DD +:104C300020E030E040E251E4C701B6010E94F838BC +:104C40006B017C0120E030E040E05FE3C701B6018A +:104C50000E94A1350E94123710E03AE0832E912C79 +:104C6000A12CB12C611571058105910591F0EE24FF +:104C7000E394F12CEC0EFD1EE10EF11CA501940154 +:104C80000E94213A605DF7016083B901CA011F5F8C +:104C9000E9CF80E3101748F4E1E0F0E0EC0FFD1FEE +:104CA000E10FF11D80831F5FF5CF101313C0FE01CC +:104CB000E10FF11D80E381831F5F0CC0101303C05F +:104CC0008EE20E946C1BFE01E10FF11D80810E94AB +:104CD0006C1B11501111F2CF2D960FB6F894DEBF58 +:104CE0000FBECDBFDF91CF911F910F91FF90EF903D +:104CF000DF90CF90BF90AF909F908F9008952091BC +:104D0000700120FF08C02BE832E441E25DE30E941D +:104D1000F83841E001C040E00C94E2252091700198 +:104D200020FF08C02BE832E441E25DE30E94F8383E +:104D300044E001C043E00C94E225CF93DF93843636 +:104D400030F06AE00E94013AC0E3C90F03C0C0E03E +:104D50008A3030F06AE00E94013AD0E3D90F01C0F6 +:104D6000D0E0805D0E946C1BDD2319F08D2F0E9426 +:104D70006C1BCC2329F08C2FDF91CF910C946C1BF2 +:104D8000DF91CF910895CF93DF93FC018491EF01E0 +:104D90002196882321F00E946C1BFE01F7CFDF9142 +:104DA000CF910895E1E0F1E0AAEFB1E04191519196 +:104DB000619171914D935D936D937D9381E0ED30A1 +:104DC000F807A1F70895BF92CF92DF92EF92FF927A +:104DD0000F931F93CF93DF937C01FC0102A513A5D2 +:104DE000D4A5C5A5818980FF18C06091220170E01B +:104DF00080E090E00E944A372AE037ED43E25CE32E +:104E00000E94F8389B01AC01B8018D2F9C2F0E94A5 +:104E1000F8388B01D82FC92F2DC082FD17C06091A3 +:104E2000210170E080E090E00E944A372AE037EDEF +:104E300043E25CE30E94F8389B01AC01B8018D2F7E +:104E40009C2F0E94F8388B01D82FC92FF701B6A0EC +:104E5000C7A0D0A4F1A42B2D3C2D4D2D5F2DB80162 +:104E60008D2F9C2F0E94B838181624F40B2D1C2D62 +:104E7000DD2DCF2D20E030E040E85FE3B8018D2F3D +:104E80009C2F0E94B838181624F000E010E0D0E8FB +:104E9000CFE3B8018D2F9C2FDF91CF911F910F9100 +:104EA000FF90EF90DF90CF90BF90089580912F03F7 +:104EB00090915006981739F022E3829FC001112487 +:104EC000805D9C4F089580E090E008950E9449160F +:104ED0000E94351580911B01811108C00E94562740 +:104EE000892BB1F780911A01883091F308958CE1F4 +:104EF000EAEFF1E0DF011D928A95E9F710922F03A6 +:104F00001092500681E08093100710922E030895AE +:104F10002F923F924F925F926F927F928F929F92C9 +:104F2000AF92BF92CF92DF92EF92FF920F931F93B7 +:104F3000CF93DF93C0915006C11101C0C0E1C150B1 +:104F4000D0912E03DC1709F41DC1EC2EF12C22E3C5 +:104F5000C29F80011124005D1C4FF801A688B7880C +:104F6000C08CD18C628D738D848D958D9B01AC012D +:104F70000E94A135F801268D378D40A151A10E94D4 +:104F8000F8384B018C019B01AC01B501C6010E94B0 +:104F9000963687FD02C05401680182E38E9DF001C0 +:104FA0008F9DF00D1124E05DFC4FC501D601828B71 +:104FB000938BA48BB58BC11101C0C0E1C150DC172C +:104FC00061F022E32E9DC0012F9D900D11249C01C4 +:104FD000205D3C4F7901D2E333C080912F03D81379 +:104FE00060C00E9479255DC0AC2EB12CDA9DC00155 +:104FF000DB9D900D1124FC01E05DFC4F6F01C111A0 +:1050000001C0C0E1C15080912F038C1302C00E94E7 +:105010007925DA9D8001DB9D100D1124005D1C4F68 +:10502000F80186889788A08CB18CA50194016289CB +:105030007389848995890E949636811106C076010C +:1050400080912E03C813D0CF2CC0F801628D738DD0 +:10505000848D958D9B01AC010E94A135F801268DB0 +:10506000378D40A151A10E94F838F7012289338978 +:10507000448955890E94A1352B013C019B01AC015B +:10508000C501B4010E94B838F80118162CF4428A00 +:10509000538A648A758AD3CF828A938AA48AB58A0E +:1050A000CECFD0912E03F2E3DF9F80011124005D6B +:1050B0001C4FC1E0CD0FC03109F4C0E02090500674 +:1050C00082E3382EC21509F45BC0CC2ED12C3C9C57 +:1050D000C0013D9C900D11249C01205D3C4F790145 +:1050E000F8014288538864887588F901828893881A +:1050F000A488B588A5019401C301B2010E94963627 +:1051000087FF24C0F801628D738D848D958D9B017E +:10511000AC010E94A135F801268D378D40A151A127 +:105120000E94F838A30192010E94A1352B013C0195 +:105130009B01AC01C501B4010E94B838181634F4C3 +:10514000F701428A538A648A758ADC2F3C9CF001FD +:105150003D9CF00D1124E05DFC4F26893789408D80 +:10516000518D62897389848995890E94963681114F +:1051700001C0DC2FCF5FC03109F4C0E08701A2CFAE +:10518000D0932E03DF91CF911F910F91FF90EF905D +:10519000DF90CF90BF90AF909F908F907F906F9057 +:1051A0005F904F903F902F9008951F93CF93DF9380 +:1051B000142F20E030E040EA51E40E94F8380E94C9 +:1051C0007F360E941937EB012097D1F080911B01A7 +:1051D000811116C0111103C00E94351506C00E942E +:1051E000F31080911C0181FD0BC02FEF80E792E04E +:1051F000215080409040E1F700C000002197E4CFAB +:10520000DF91CF911F9108958091070784FD1FC002 +:1052100080E10E942D1D8091B0008F778093B000B7 +:10522000439890911A01892F8C7221F480911E016C +:10523000867069F0943031F480910807811105C0BF +:1052400086E001C083E00E941D1D0C949016089515 +:105250008F929F92AF92BF92CF92DF92EF92FF9286 +:105260000F931F93CF93DF937C016B01DC01CC91F3 +:10527000D0E0FE01EF5EF84F80818D3229F4EF011E +:105280002296818101E009C08B3219F0CE5ED84FA1 +:1052900003C0EF012296818100E0912CF0E010E044 +:1052A00020E030E0A9015E01E0EDE80FEA30D0F443 +:1052B000FF5FF93098F491101150A5E0B0E00E9422 +:1052C000493ADC01CB01880F991FAA1FBB1F9C0123 +:1052D000AD012E0F311D411D511D0AC0911008C096 +:1052E0001F5F06C0EE3F41F4911006C099249394CD +:1052F0002196D5018C91D7CFFF2309F44FC0CA0165 +:10530000B9010E9448374B015C0120E030E0A9015F +:105310000E949636882349F11F3F64F42AE037ED56 +:1053200043E25CE3C501B4010E94F8384B015C0123 +:105330001E5FF2CF1F3F59F42DEC3CEC4CEC5DE3CB +:10534000C501B4010E94F8384B015C010EC0112365 +:1053500061F020E030E040E251E4C501B4010E9478 +:10536000F8384B015C011150F2CF002351F0B7FA2D +:10537000B094B7F8B094F60180829182A282B38291 +:1053800006C0D6018D929D92AD92BC921397C151E9 +:10539000D740C150F701C08381E001C080E0DF91B8 +:1053A000CF911F910F91FF90EF90DF90CF90BF9022 +:1053B000AF909F908F9008952F923F924F925F925F +:1053C0006F927F928F929F92AF92BF92CF92DF9215 +:1053D000EF92FF920F931F93CF93DF93CDB7DEB77A +:1053E000A1970FB6F894DEBF0FBECDBF90911B0101 +:1053F0009111C4C18F8FFE013D9689E0DF011D929E +:105400008A95E9F786E08D8BEBE2F1E0FA8FE98F80 +:105410005F019E012A5E3F4F490100E010E0C12C70 +:10542000D12C76019F8D892F90E09E8F8D8F802FBC +:10543000002321F0013021F090E103C094E001C08D +:1054400098E0D4019D934D01ED8DFE8D02C0F59540 +:10545000E7958A95E2F7E0FF1BC020E030E040ECE2 +:105460005FEBD50194966D917D918D919C9197976D +:105470000E94F838362E472E582E692EA701960125 +:105480000E94963687FD04C0C32CD42CE52CF62C44 +:105490000F5F1F4FB4E0AB0EB11C0330110539F69E +:1054A00020907601309077014090780150907901FA +:1054B00084E0A82EBB24B39461E071E0CE01019694 +:1054C0000E94361D80917101682E712CFE0131966B +:1054D00021E031E03C8F2B8F39A328A3DE015696C3 +:1054E0004D0180E090E000E010E0B701A6017058A7 +:1054F0002D8D3E8D082E02C0359527950A94E2F732 +:1055000020FF22C00F5FA8A1B9A11D921D921D927C +:105510001C9213979301082E02C0359527950A9483 +:10552000E2F720FF03C0BB2019F007C0BB2029F021 +:10553000C082D182E282F38204C0408351836283BD +:105540007383D4012C91122B0196BFEF8B1A9B0A07 +:10555000349628A139A12C5F3F4F39A328A383306B +:10556000910531F6602F70E080E090E00E944837AE +:105570000E9497399B01AC0110932001C201B10137 +:105580000E94F8386D877E878F87988BBE01635F96 +:105590007F4FCE0101960E947D3234E030931E0190 +:1055A0000E94BB1D0E940E19BB20E9F00E94280238 +:1055B000FE01769620E030E090E06191462F412395 +:1055C00059F0AC01022E02C0559547950A94E2F7B6 +:1055D00040FF02C0609516232F5F3F4F23303105F7 +:1055E00061F7109320010E94BB1D8091070784730F +:1055F00039F11091070714FF03C086E00E941D1DBA +:1056000015FF03C087E00E941D1DB11007C00E9456 +:1056100028029F8D892339F088E003C012FF03C060 +:1056200089E00E941D1D80910807882329F00E94AF +:1056300004290E943515A2C084E00E94231D04C0E5 +:10564000812F8C7109F0B0CF0E949D2500917A01C5 +:1056500010917B010115110549F0AFE9BFE01197E9 +:10566000F1F700C0000001501109F4CFB1E0BB26F2 +:10567000C9F020E030E040EA50E460917C01709194 +:105680007D0180917E0190917F010E94F8386B012D +:105690007C01209072013090730140907401509011 +:1056A000750110C0C0907C01D0907D01E0907E011A +:1056B000F0907F0120907601309077014090780142 +:1056C00050907901AA94A110F7CEE0907101F12CCD +:1056D00080907C0190907D01A0907E01B0907F0130 +:1056E0002401350177FA709477F870948D8D9E8D32 +:1056F000002E02C0959587950A94E2F780FF2BC093 +:10570000C701002E02C0959587950A94E2F7E98DAE +:10571000FA8D80FF0FC024A135A146A157A1C50174 +:10572000B4010E94A135A98DBA8D2D913D914D9165 +:105730005C9106C02081318142815381C301B20155 +:105740000E94F8380E94C538AB8DBC8D6D937D9357 +:105750008D939C9313970F5F1F4FEB8DFC8D3496A9 +:10576000FC8FEB8F298D3A8D2C5F3F4F3A8F298F1D +:105770000330110509F0BACF10921E01A1960FB6A1 +:10578000F894DEBF0FBECDBFDF91CF911F910F9177 +:10579000FF90EF90DF90CF90BF90AF909F908F9051 +:1057A0007F906F905F904F903F902F900895CF9390 +:1057B000DF93CDB7DEB761970FB6F894DEBF0FBEAB +:1057C000CDBF8091C00082608093C0001092C50060 +:1057D00080E18093C4008091C10088698093C100FA +:1057E00080E090E00E94F1018A3009F038C545E57B +:1057F00050E061E070E08BE291E00E944302892B6F +:1058000009F42DC58AB18C618AB9209A8AB1806E5B +:105810008AB9809181008F7E809381008091810080 +:10582000886080938100809180008C7F80938000CD +:10583000809180008F708093800080916E00887FBF +:1058400080936E0014BC15BC80916E0081608093C3 +:105850006E0087B1887F87B988B1876088B98091E9 +:105860006C00876080936C008091680082608093F8 +:1058700068008CE0E1E0F1E0DF011D928A95E9F734 +:10588000789410921A018091700184FF03C081E026 +:1058900080931A01AAE12A2EA1E03A2E992493942A +:1058A00080911A0191E1F10111929A95E9F78093A3 +:1058B0001A0184E6809321018093220180932301C1 +:1058C0008CE0ADE0B1E01D928A95E9F710921901E4 +:1058D00010920707109208071092090710920A0702 +:1058E000809198028093970280E4E0E8F1E01192C1 +:1058F0008A95E9F764EA71E080E00E94421A81111A +:1059000003C087E00E94881B0E94EE193B9A4398CF +:105910000E94DA013D98459A80E00E94D0250E94BD +:1059200077270E949D250E94D2260E943D028AE58B +:1059300091E00E94C3268091700183FF10C00E94F5 +:105940002802882361F090921A0183EA92E00E9473 +:10595000C32682E492E00E94C3260E94EE1080914A +:105960001A01817899F083EA92E00E94C3268DE7BC +:1059700092E00E94C3260E94EE1090921A0110E05D +:1059800000E0E2E0EE2EF4E08F2E29C010921A0122 +:105990000E94DD1CF4CFE92FF0E0EA5EFD4F80812C +:1059A0009F5F913809F490E0909397028F3FE9F060 +:1059B0008A3021F50E94351580911B01811170CF2D +:1059C000E12FF0E0EF5EF84F1082F02FF170FF2E24 +:1059D00000FF18C08BE00E94881B10E000E090914F +:1059E0009702809198029813D6CF0E9449160E9480 +:1059F000351580911B01882391F352CF8D3009F02A +:105A000008C4D8CF80911107882309F4FFC38432DA +:105A100009F0F4C3998A80911207833409F134F4B0 +:105A2000882361F0843209F006C11AC08A3459F023 +:105A30008835B1F0873409F0FEC012C082EC91E0E5 +:105A40000E94C326D9C380911A018F7D09F0C4C377 +:105A5000809113078D3309F0C7C30E94F202BFC3C0 +:105A6000909113079111C0C3833409F4B2C01CF4A0 +:105A7000843239F0C1C3873469F0883509F4C9C06C +:105A8000BBC380911A018871F82E09F0A5C30E944A +:105A9000941BB2C38CEB91E00E94C32680918001DD +:105AA0008C3838F088EB91E00E94C3268091800109 +:105AB0008A580E949D2689EA91E00E94C32680911F +:105AC00086018A5C0E949D2689EA91E00E94C32695 +:105AD000809184018F5E0E949D2689EA91E00E9458 +:105AE000C3268091820125E1281B822F0E949D26DA +:105AF00089EA91E00E94C32680918301865A0E9420 +:105B00009D2689EA91E00E94C326809181019EE54D +:105B1000981B892F0E949D2680918701882399F0E8 +:105B20008CEA91E00E94C32680918701833029F09E +:105B30008E3139F0823039F404C080E30E946C1B4E +:105B400002C00E949D268CEA91E00E94C3268091AB +:105B50008901803131F0803231F0811107C085E355 +:105B600003C083E301C084E30E946C1B8CEA91E0D4 +:105B70000E94C32680918801882311F088E301C028 +:105B800089E30E946C1B85EB91E00E94C326809103 +:105B900093010E949D2682EB91E00E94C3266091B2 +:105BA0008F017091900180919101909192010E94DA +:105BB0007F268FEA91E00E94C32660918B0170914D +:105BC0008C0180918D0190918E0140E00E94E22530 +:105BD0000EC080911A01823069F40E94042983EA80 +:105BE00092E00E94C3268AE592E00E94C3260E94AA +:105BF000EE1002C38111F0C2E0921A0183EA92E032 +:105C00000E94C32683E692E00E94C3260E94EE1003 +:105C10003BC080911A01813009F0EEC283EA92E024 +:105C20000E94C3268BE692E00E94C3260E94EE10DB +:105C300010921A01E1C290911A01923008F0CCC280 +:105C4000893409F49FC034F4833271F0883409F444 +:105C50005AC041C1823509F4E8C0833509F480C0D7 +:105C60008E3409F038C111C1809113078111BCC273 +:105C700010E0BE016F5F7F4F812F0E94421A811199 +:105C800005C087E00E94881BF12CB6C286EA91E02D +:105C90000E94C326163029F0173041F480EA91E0C3 +:105CA00002C083EA91E00E94C32604C086E3810F0C +:105CB0000E949D268AE30E946C1BCE0101960E94E1 +:105CC0009D100E94EE101F5F183099F68AE991E04E +:105CD0000E94C32680EB91E00E949D100E94EE106E +:105CE00084E991E00E94C3266091BC017091BD01DE +:105CF0008091BE019091BF010E948E260E94EE10FD +:105D00000E94563179C28091700184FF62C28092F4 +:105D10001A0180911307811167C20E94CF0181E0AF +:105D20000E94DC2982E00E94DC290E9435158091C6 +:105D30001B01811106C00E943D020E94D2260E94D2 +:105D4000DA0180911B01811157C210921A010E9441 +:105D500090168091130781114FC20E94DD1C94CFD1 +:105D6000809113078C3409F03FC28091140780356D +:105D700009F03AC280911507811136C280E80E946D +:105D80002D1D3AC2E98A80911307811130C040E588 +:105D900050E06EEA73E081E197E00E944302892BB4 +:105DA00051F41092110740E550E061E177E08EEA8E +:105DB00093E00E94A90280E891E00E94C3260E941D +:105DC000AE1C0E94EE108AE791E00E94C32686E591 +:105DD0000E946C1B8CE20E946C1B8FE00E949D262F +:105DE0008CE20E946C1B80E80E949D2600CFA3E0FD +:105DF000A98B8D3309F0F8C183E0282F30E0F90139 +:105E0000EF5EF84F9081D901A25FB84F9C938F5FEE +:105E100090819111F2CF898B40E550E061E177E00C +:105E20008EEA93E00E94A902E7C1809113078335AF +:105E300009F0DAC180911407843509F0D5C1809149 +:105E400015078D3309F0D0C1809117078111CCC19E +:105E500080911607843239F08A3239F0833209F0A2 +:105E6000C3C182E003C081E001C08FEF0E94631ACA +:105E700083EA92E00E94C32687E292E00E94C32652 +:105E80000E94EE100E940429B7C1E98A809113078D +:105E900081111DC010E0812F0E94BB1C811104C024 +:105EA00087E00E94881B0EC087E791E00E94C3260E +:105EB000812F0E949D268DE30E946C1B0E94AE1CC8 +:105EC0000E94B6101F5F123009F496C1E4CF911101 +:105ED00083C111E001C010E0BE01635F7F4FCE01BE +:105EE00041960E942829811103C072E0F72E84C1D7 +:105EF000E98981E08E0F898BF0E0EF5EF84F9081A9 +:105F00009D3309F071C1112371F1482F50E0282F02 +:105F100030E0F901EF5EF84F9081241B350BD90179 +:105F2000AF5EB84F9C938F5F90819111F0CF898BBA +:105F30000E94F202811153C16D857E858F859889FB +:105F40000E94DB390E941937162F0E946627B1E59F +:105F50001B9FC001112440E550E061E177E09D5FA7 +:105F60000E94A90291CEBE016F5F7F4FCE01419684 +:105F70000E942829882309F4B8CFE989F0E0EF5E70 +:105F8000F84F8081811130C1AD84BE84CF84D88820 +:105F900020E030E04FE753E4C601B5010E94B83875 +:105FA00018160CF421C149805A806B807C80C60190 +:105FB000B5010E941937062F20E030E0A901C30186 +:105FC000B2010E94963687FD0CC1043608F440C029 +:105FD000045680E0033098F510E0000F111F000F09 +:105FE000111F823079F0F801833011F1813019F0FE +:105FF000E55DFE4F02C0E95CFE4F40825182628245 +:106000007382E4C00D5B1E4F20E030E040E752E4B5 +:10601000C301B2010E94F83820E030E040E752E4CA +:106020000E94F838F8016083718382839383CEC025 +:10603000E15BFE4F77FA709477F87094DECF8F5F54 +:106040000A3008F4D1C0843009F4CEC00A50C2CF5F +:10605000C301B2010E94DB390E94193710E00132FE +:10606000110508F0C1C0F801EC5CFF4F0C94433AF5 +:10607000633008F4BCC060935B01A8C060935E010C +:10608000A5C060935C0102C060935D010E945F1631 +:106090009DC080917001662311F0846095C08B7F54 +:1060A00093C080917001662311F080648DC08F7B56 +:1060B0008BC080917001662311F0806801C08F77DA +:1060C0008093700180E00E94D02580C060935F01C2 +:1060D0007DC04092600150926101609262017092B5 +:1060E000630174C040926401509265016092660140 +:1060F000709267016BC080917001662311F081601E +:1061000001C08E7F809370010E94BB315FC080917F +:106110007001662321F084FF6DC0806255C08F7DC1 +:1061200053C080917001662311F0886001C0877FA1 +:10613000809370010E94DA0149C08091700166234A +:1061400011F0806141C08F7C3FC0609371013EC0FF +:1061500040927201509273016092740170927501C5 +:1061600035C040927601509277016092780170922A +:1061700079012CC070E070937B0160937A0126C096 +:1061800040927C0150927D0160927E0170927F016D +:106190001DC0409268015092690160926A0170923C +:1061A0006B0108C040926C0150926D0160926E01CB +:1061B00070926F010E94EE1909C0809170016623F0 +:1061C00011F0826001C08D7F809370010E94211ABE +:1061D00013C055E0F52E10C048E0F42E0DC0F82E87 +:1061E0000BC034E0F32E08C023E0F22E05C096E089 +:1061F000F92E02C08AE0F82E8F2D08C080911A0176 +:10620000817211F089E0E7CB0E94F2020E94A61C85 +:10621000E4CB002329F0893209F0E1CB0D7FDFCBFD +:10622000813208F4DCCB8F3209F4D9CB883289F083 +:106230008B3389F01F3488F4212F30E01F5F9FE9F2 +:10624000980FF901EF5EF84F9A3108F4805280837D +:10625000C6CB02E0C4CB04E0C2CB01E0C0CB87E0F8 +:106260000E94881B8FEF0E94631A0E94941BCACA67 +:10627000CF92DF92EF92FF92CF9390911A019230DA +:1062800079F06A017B01C82F0E946627B701A60139 +:106290008C2FCF91FF90EF90DF90CF900C94C3198B +:1062A000CF91FF90EF90DF90CF900895CF93DF9341 +:1062B000CDB7DEB72C970FB6F894DEBF0FBECDBFBB +:1062C0008FE093E00E94C3266DE071E0CE0101965D +:1062D0000E94361DCE0101960E949D108AE30E9405 +:1062E0006C1B80911F010E949D260E94EE102C962F +:1062F0000FB6F894DEBF0FBECDBFDF91CF910895EA +:10630000AF92BF92CF92DF92EF92FF920F931F93C3 +:10631000CF93DF93EC010FE411E05C018CE0A80E59 +:10632000B11CC990D990E990F99020E030E0A90122 +:10633000C701B6010E94B83818168CF0F8012191F7 +:106340003191419151918F01C701B6010E9496365A +:1063500087FD05C0CA15DB0521F780E001C081E09B +:10636000DF91CF911F910F91FF90EF90DF90CF9031 +:10637000BF90AF9008950E9466271092260108955D +:106380006F927F928F929F92AF92BF92CF92DF9245 +:10639000EF92FF920F931F93CF93DF93EB018C014A +:1063A0005B018CE0A80EB11C89E9682E96E7792E76 +:1063B00026E9822E3EE7932EC990D990E990F99074 +:1063C00020E030E0A901C701B6010E94963688237B +:1063D000B9F0A7019601F8016081718182819381F2 +:1063E0000E94A0366B017C01E894F7F89301A401A8 +:1063F000C701B6010E94B838181614F036014701DB +:106400000C5F1F4FCA15DB05B9F6B301C401DF915C +:10641000CF911F910F91FF90EF90DF90CF90BF90A1 +:10642000AF909F908F907F906F9008954F925F9262 +:106430006F927F92AF92BF92CF92DF92EF92FF92D4 +:106440000F931F93CF93DF93EC015C018CE0A80EB8 +:10645000B11C8E01C12CD12C7601F80141905190D4 +:10646000619071908F0120E030E0A901C301B20179 +:106470000E949636882371F0A3019201C301B201F4 +:106480000E94F8389B01AC01C701B6010E94A135FA +:106490006B017C010A151B0501F7C701B6010E94BB +:1064A00097396B017C019B01AC0160E070E080E8F2 +:1064B0009FE30E94A0362B013C01A3019201688159 +:1064C00079818A819B810E94F838699379938993B5 +:1064D0009993AC16BD0689F7C701B601DF91CF913C +:1064E0001F910F91FF90EF90DF90CF90BF90AF90F2 +:1064F0007F906F905F904F9008952F923F924F92B0 +:106500005F926F927F928F929F92AF92BF92CF9243 +:10651000DF92EF92FF920F931F93CF93DF93CDB74C +:10652000DEB7C454D1090FB6F894DEBF0FBECDBF9D +:106530003B0130915006232E312C22E3229DA001F5 +:10654000239D500D1124BA01605D7C4F7AAF69AF75 +:10655000FB0111922A95E9F7F3012085FB01218BBC +:10656000F3014481558166817781E9ADFAAD46A793 +:1065700057A760AB71AB21FF40C02CE0E1E0F1E038 +:10658000DE01599601900D922A95E1F78BAB9CABF9 +:106590006BE271E07EAB6DABCE010D9623969FAFA3 +:1065A0008EAF2397FE0179962196FFAFEEAF21972C +:1065B000F2E33F9FC00111249C01205D3C4F3EAFA0 +:1065C0002DAFBE016B5D7F4F7CAF6BAF78AF6FAB14 +:1065D00010E082E3829D9001839D300D1124C9015A +:1065E000805D9C4FFC013C962596FFAFEEAF259752 +:1065F0002C01F0E14F0E511C3CC02CE0EAEFF1E021 +:10660000BFCFEDADFEAD2193319341935193FEAFDA +:10661000EDAF2596EEADFFAD2597C080D180E2802D +:10662000F380C216D306E406F50610F469017A0178 +:106630002596EEADFFAD2597C082D182E282F3822E +:106640000E944A37A50194010E94A036EFA9F8AD37 +:106650006193719381939193F8AFEFAB20E030E0B9 +:10666000A9010E94963687FD42C01F5F133009F4CE +:106670004CC0EBA9FCA96191719181919191FCAB06 +:10668000EBABEDA9FEA981909190A190B190FEABEA +:10669000EDABA50194010E94F8380E94C5382396FD +:1066A000EEADFFAD23976193719381939193239600 +:1066B000FFAFEEAF23972196EEADFFAD2197C190CE +:1066C000D190E190F1902196FFAFEEAF21976C1938 +:1066D0007D098E099F099B01AC0197FF92CF22276C +:1066E0003327A901261B370B480B590B8ACF1123DF +:1066F00021F0113021F080E803C080E201C080E485 +:10670000F2019081892B8083B0CFCD28CE28CF286D +:1067100009F496C1CE0185960E9416324B015C01A8 +:1067200082E3829D8001839D100D1124005D1C4F2A +:10673000F801868E978EA0A2B1A2BE016B5D7F4F3D +:1067400083E491E00E94C031F801628F738F848FDF +:10675000958FBE016B5D7F4F87E391E00E94C03152 +:10676000F80166A377A380A791A7F188F0FC12C077 +:10677000F3012081318142815381F3FC06C0F8018D +:1067800022A733A744A755A709C0C501B4010E9499 +:10679000F838F80162A773A784A795A790915006CF +:1067A00080912F03981711F0F1FE0DC082E3829DB6 +:1067B000F001839DF00D1124E05DFC4F128A138AD5 +:1067C000148A158A54C026E032E03CAB2BAB8E0114 +:1067D0000F5F1F4FBE016F5C7F4F7AAB69ABC12C5F +:1067E000D12C76010DAB1FABEBA9FCA98190919048 +:1067F000A190B190FCABEBABEBADFCAD41905190F7 +:1068000061907190FCAFEBAFA3019201C501B4019F +:106810000E94F8389B01AC01C701B6010E94A03567 +:106820006B017C01A5019401C301B2010E94A03556 +:10683000F80161937193819391938F0129A93AA9EA +:106840006BAD7CAD2617370779F62FEE3FEF4FE79C +:106850005FE3C701B6010E94B83818166CF482E3F2 +:10686000829DF001839DF00D1124E05DFC4F12A28A +:1068700013A214A215A271C02FEE3FEF4FE75FEBFA +:10688000C701B6010E94963687FF11C082E3829D40 +:10689000F001839DF00D1124E05DFC4F89E996E73E +:1068A000A6E9BEE782A393A3A4A3B5A356C08DA96E +:1068B0009FA90E9416326DA97FA983E491E00E94EE +:1068C000C0314B015C01A701960160E070E080E8F7 +:1068D0009FE30E94A03520E030E040E05FE30E94AB +:1068E000F8380E9497396B017C012091600130914A +:1068F00061014091620150916301C501B4010E94A0 +:10690000F838A70196010E94F8384B015C01A701F5 +:10691000960160E070E080E89FE30E94A0359B0153 +:10692000AC01C501B4010E94A0366B017C0120E0DE +:1069300030E0A9010E94963687FF03C0C12CD12CFC +:10694000760182E3829DF001839DF00D1124E05DCC +:10695000FC4FC2A2D3A2E4A2F5A282E3829D8001F1 +:10696000839D100D1124005D1C4FF801818981FD6C +:1069700069C089AD9AAD0E94E3266B017C018090CD +:10698000120290901302A0901402B0901502A5017B +:1069900094010E94B83818162CF4A5019401C50181 +:1069A000B40104C0A7019601C701B6010E94F838DE +:1069B000F801668B778B808F918F82E3829D8001B7 +:1069C000839D100D1124005D1C4FF80182A093A03F +:1069D000A4A0B5A0A501940166897789808D918DC9 +:1069E0000E94B83818162CF4F801868A978AA08E6F +:1069F000B18EC0921202D0921302E0921402F09271 +:106A000015028CE0FE01B596A6E0B2E001900D9271 +:106A10008A95E1F78CE0FE013D96AAEFB1E0019086 +:106A20000D928A95E1F780911007809350068F5F51 +:106A3000803109F480E0809310070E94882702C00B +:106A400080E001C081E0CC5BDF4F0FB6F894DEBF81 +:106A50000FBECDBFDF91CF911F910F91FF90EF90AF +:106A6000DF90CF90BF90AF909F908F907F906F906E +:106A70005F904F903F902F900895FF920F931F9338 +:106A8000CF93DF938C01EB018091700185FF26C0CD +:106A9000F0901A0180E2F81629F1C8010E948031B5 +:106AA0008823E1F081E080931D0188E0F81641F031 +:106AB0000E94042982E00E941D1D0E9435150EC00F +:106AC00088E00E942D1D0E94351580911B018111C7 +:106AD00005C080911A018111F6CFEACF80911A0189 +:106AE000823041F10E94351580911B01811122C035 +:106AF00090912F0380911007981303C00E944916AC +:106B0000F1CFBE01C8010E947D32811113C0809176 +:106B1000700181FF0FC0888584FF0CC04C815D81AE +:106B20006E817F8180E1DF91CF911F910F91FF9066 +:106B30000C943831DF91CF911F910F91FF90089500 +:106B40005058BB27AA270E94B8350C9452380E948F +:106B5000193838F00E94203820F039F49F3F19F49A +:106B600026F40C94EF370EF4E095E7FB0C94C03755 +:106B7000E92F0E94773858F3BA1762077307840722 +:106B8000950720F079F4A6F50C94B1380EF4E09551 +:106B90000B2EBA2FA02D0B01B90190010C01CA01D7 +:106BA000A0011124FF27591B99F0593F50F4503E82 +:106BB00068F11A16F040A22F232F342F4427585F74 +:106BC000F3CF469537952795A795F0405395C9F78C +:106BD0007EF41F16BA0B620B730B840BBAF0915044 +:106BE000A1F0FF0FBB1F661F771F881FC2F70EC0E3 +:106BF000BA0F621F731F841F48F4879577956795B6 +:106C0000B795F7959E3F08F0B0CF9395880F08F0A1 +:106C10009927EE0F9795879508950E94193860F08F +:106C200080E891E009F49EEF0E94203828F040E8C7 +:106C300051E071F45EEF0CC00C94EF370C94B13856 +:106C4000E92FE0780E94773840F3092E052AB1F346 +:106C5000261737074807590738F00E2E07F8E025A2 +:106C600069F0E025E0640AC0EF6307F8009407FAD2 +:106C7000DB01B9019D01DC01CA01AD01EF930E9466 +:106C8000B7360E9452380E9450365F91552339F032 +:106C90002BED3FE049E450FD49EC0C94A1350895FB +:106CA000DF93DD27B92FBF7740E85FE3161617069D +:106CB00048075B0718F4D92F0E94BD389F938F9324 +:106CC0007F936F930E94D739EEE0F1E00E94F23794 +:106CD0000E9452382F913F914F915F910E940B3942 +:106CE000DD2351F09058A2EA2AED3FE049EC5FE342 +:106CF000D0785D270E94B835DF910C9452380E94FD +:106D0000993890F09F3748F4911116F40C94B238EA +:106D100060E070E080E89FE3089526F01B16611D97 +:106D2000711D811D0C94C6370C94E1370E949C376D +:106D300008F481E008950E942938E3950C946338A3 +:106D40000E94B4360C9452380E94203858F00E94A9 +:106D5000193840F029F45F3F29F00C94C0375111E5 +:106D60000C94B2380C94EF370E94773868F399236B +:106D7000B1F3552391F3951B550BBB27AA27621737 +:106D80007307840738F09F5F5F4F220F331F441F44 +:106D9000AA1FA9F335D00E2E3AF0E0E832D0915078 +:106DA0005040E695001CCAF72BD0FE2F29D0660F65 +:106DB000771F881FBB1F261737074807AB07B0E8A8 +:106DC00009F0BB0B802DBF01FF2793585F4F3AF0AE +:106DD0009E3F510578F00C94C0370C94B2385F3F59 +:106DE000E4F3983ED4F3869577956795B795F79534 +:106DF0009F5FC9F7880F911D9695879597F908951C +:106E0000E1E0660F771F881FBB1F621773078407B7 +:106E1000BA0720F0621B730B840BBA0BEE1F88F7C6 +:106E2000E09508950E9419376894B1110C94B23816 +:106E300008950E947F3888F09F5798F0B92F9927BE +:106E4000B751B0F0E1F0660F771F881F991F1AF055 +:106E5000BA95C9F714C0B13091F00E94B138B1E0D1 +:106E600008950C94B138672F782F8827B85F39F0D0 +:106E7000B93FCCF3869577956795B395D9F73EF4EE +:106E800090958095709561957F4F8F4F9F4F089596 +:106E9000E89409C097FB3EF49095809570956195B4 +:106EA0007F4F8F4F9F4F9923A9F0F92F96E9BB276A +:106EB0009395F695879577956795B795F111F8CFE6 +:106EC000FAF4BB0F11F460FF1BC06F5F7F4F8F4F51 +:106ED0009F4F16C0882311F096E911C0772321F047 +:106EE0009EE8872F762F05C0662371F096E8862FDF +:106EF00070E060E02AF09A95660F771F881FDAF736 +:106F0000880F9695879597F908950E94993890F083 +:106F10009F3748F4911116F00C94B23860E070E09D +:106F200080E89FEB089526F41B16611D711D811DDD +:106F30000C94C6370C94E137990F0008550FAA0B33 +:106F4000E0E8FEEF16161706E807F907C0F012167C +:106F50001306E407F50798F0621B730B840B950B7F +:106F600039F40A2661F0232B242B252B21F40895D4 +:106F70000A2609F4A140A6958FEF811D811D089571 +:106F800097F99F6780E870E060E00895882371F4C6 +:106F9000772321F09850872B762F07C0662311F4B2 +:106FA00099270DC09051862B70E060E02AF09A95E9 +:106FB000660F771F881FDAF7880F9695879597F9E0 +:106FC00008959F3F31F0915020F48795779567950C +:106FD000B795880F911D9695879597F908959FEF1E +:106FE00080EC0895DF93CF931F930F93FF92EF925E +:106FF000DF927B018C01689406C0DA2EEF010E94BB +:107000000B39FE01E894A591259135914591559153 +:10701000A6F3EF010E94B835FE019701A801DA94AA +:1070200069F7DF90EF90FF900F911F91CF91DF9163 +:10703000089500240A9416161706180609060895DE +:1070400000240A94121613061406050608950C94DB +:10705000EF370E947F38D8F3E894E0E0BB279F57D2 +:10706000F0F02AED3FE049EC06C0EE0FBB0F661FC3 +:10707000771F881F28F0B23A62077307840728F049 +:10708000B25A620B730B840BE3959A9572F78038B2 +:1070900030F49A95BB0F661F771F881FD2F7904870 +:1070A0000C94E337092E0394000C11F4882352F05A +:1070B000BB0F40F4BF2B11F460FF04C06F5F7F4F24 +:1070C0008F4F9F4F0895EF93E0FF07C0A2EA2AED8C +:1070D0003FE049EC5FEB0E94B8350E9452380F90B8 +:1070E000039401FC9058EBE3F1E00C94ED3957FD6B +:1070F0009058440F551F59F05F3F71F04795880F26 +:1071000097FB991F61F09F3F79F0879508951216BC +:1071100013061406551FF2CF4695F1DF08C0161668 +:1071200017061806991FF1CF869571056105089419 +:1071300008950E947F38A0F0BEE7B91788F4BB27F6 +:107140009F3860F41616B11D672F782F8827985F37 +:10715000F7CF869577956795B11D93959639C8F3C6 +:107160000895E894BB2766277727CB0197F9089500 +:107170000E949C3708F48FEF08959B01AC0160E0FA +:1071800070E080E89FE30C94A0360E947F3858F1AD +:107190009E5760F19851A0F0E9F0983020F5092E43 +:1071A0009927660F771F881F991F0A94D1F712C07D +:1071B000062E672F782F8827985F11F4000C07C0E0 +:1071C000993FB4F38695779567959395D9F7611DA7 +:1071D000711D811D3EF490958095709561957F4F4E +:1071E0008F4F9F4F089568940C94B2380C94B13827 +:1071F0000E940B390C9452380E94193838F00E94C2 +:10720000203820F0952311F00C94C0370C94EF3700 +:1072100011240C94B2380E94773870F3959FC1F313 +:10722000950F50E0551F629FF001729FBB27F00D34 +:10723000B11D639FAA27F00DB11DAA1F649F662789 +:10724000B00DA11D661F829F2227B00DA11D621FD8 +:10725000739FB00DA11D621F839FA00D611D221F92 +:10726000749F3327A00D611D231F849F600D211D76 +:10727000822F762F6A2F11249F5750409AF0F1F0F9 +:1072800088234AF0EE0FFF1FBB1F661F771F881F62 +:1072900091505040A9F79E3F510580F00C94C037A3 +:1072A0000C94B2385F3FE4F3983ED4F3869577951B +:1072B0006795B795F795E7959F5FC1F7FE2B880F08 +:1072C000911D9695879597F908950E947F38E8F06B +:1072D0009E37E8F09639B8F49E3848F4672F782F37 +:1072E0008827985FF9CF8695779567959395953917 +:1072F000D0F3B62FB1706B0F711D811D20F48795EF +:107300007795679593950C94C6370C94E1370C9458 +:10731000B2389F930E9429380F9007FCEE5F0C94BF +:10732000633819F416F40C94EF370C94E1370E948B +:107330007F38B8F39923C9F3B6F39F57550B87FFEE +:107340000E94E6390024A0E640EA90018058569554 +:10735000979528F4805C660F771F881F20F026170A +:107360003707480730F4621B730B840B202931293F +:107370004A2BA69517940794202531254A2758F7BC +:10738000660F771F881F20F026173707480730F44D +:10739000620B730B840B200D311D411DA09581F7ED +:1073A000B901842F9158880F9695879508959B0170 +:1073B000AC010C94F8380E94993830F09F3710F4E3 +:1073C0000C94B2380C94C6370C94E137915050406D +:1073D000660F771F881FD2F708959F938F937F932F +:1073E0006F93FF93EF939B01AC010E94F838EF91EC +:1073F000FF910E94F2372F913F914F915F910C9432 +:10740000F838991B79E004C0991F961708F0961B6D +:10741000881F7A95C9F780950895AA1BBB1B51E177 +:1074200007C0AA1FBB1FA617B70710F0A61BB70BF4 +:10743000881F991F5A95A9F780959095BC01CD0199 +:107440000895A1E21A2EAA1BBB1BFD010DC0AA1FA5 +:10745000BB1FEE1FFF1FA217B307E407F50720F0BD +:10746000A21BB30BE40BF50B661F771F881F991F38 +:107470001A9469F760957095809590959B01AC0181 +:10748000BD01CF010895EE0FFF1F0590F491E02D8F +:1074900009940E94543AA59F900DB49F900DA49F0B +:1074A000800D911D11240895A29FB001B39FC001CA +:1074B000A39F700D811D1124911DB29F700D811D20 +:1074C0001124911D0895FB01DC0104C08D910190F0 +:1074D000801921F441505040C8F7881B990B08953A +:0474E000F894FFCF4E +:00000001FF diff --git a/index.js b/index.js index eeb0a29..288176d 100644 --- a/index.js +++ b/index.js @@ -633,6 +633,60 @@ io.on("connection", function(socket) { }) + socket.on("flashGrbl", function(data) { + + var port = data.port; + var file = data.file; + const Avrgirl = require('avrgirl-arduino'); + + if (status.comms.connectionStatus > 0) { + console.log('WARN: Closing Port ' + port); + stopPort(); + } else { + console.log('ERROR: Machine connection not open!'); + } + + function flashGrblCallback(debugString, port) { + console.log(port, debugString); + var data = { + 'port': port, + 'string': debugString + } + io.sockets.emit("progStatus", data); + } + + setTimeout(function() { + var avrgirl = new Avrgirl({ + board: 'uno', + port: port, + debug: function(debugString) { + var port = this.connection.options.port; + flashGrblCallback(debugString, port) + } + }); + + status.comms.connectionStatus = 6; + avrgirl.flash(file, function(error) { + if (error) { + console.error(error); + io.sockets.emit("progStatus", 'Flashing FAILED!'); + status.comms.connectionStatus = 0; + } else { + console.info('done.'); + io.sockets.emit("progStatus", 'Programmed Succesfully'); + io.sockets.emit("progStatus", 'Please Reconnect'); + status.comms.connectionStatus = 0; + } + status.comms.connectionStatus = 0; + }); + }, 1000) + + + + + }) + + socket.on("connectTo", function(data) { // If a user picks a port to connect to, open a Node SerialPort Instance to it if (status.comms.connectionStatus < 1) { @@ -645,25 +699,28 @@ io.on("connection", function(socket) { }); port.on("error", function(err) { - console.log("Error: ", err.message); - var output = { - 'command': '', - 'response': "PORT ERROR: " + err.message - } - io.sockets.emit('data', output); - if (jogWindow && !jogWindow.isFocused()) { - appIcon.displayBalloon({ - icon: nativeImage.createFromPath(iconPath), - title: "OpenBuilds CONTROL encountered a Port error", - content: "OpenBuilds CONTROL received the following error: " + err.message - }) - } - if (status.comms.connectionStatus > 0) { - console.log('WARN: Closing Port ' + port.path); - stopPort(); - } else { - console.log('ERROR: Machine connection not open!'); + if (err.message != "Port is not open") { + console.log("Error: ", err.message); + var output = { + 'command': '', + 'response': "PORT ERROR: " + err.message + } + io.sockets.emit('data', output); + if (jogWindow && !jogWindow.isFocused()) { + appIcon.displayBalloon({ + icon: nativeImage.createFromPath(iconPath), + title: "OpenBuilds CONTROL encountered a Port error", + content: "OpenBuilds CONTROL received the following error: " + err.message + }) + } + if (status.comms.connectionStatus > 0) { + console.log('WARN: Closing Port ' + port.path); + stopPort(); + } else { + console.log('ERROR: Machine connection not open!'); + } } + }); port.on("open", function() { console.log("PORT INFO: Connected to " + port.path + " at " + port.options.baudRate); diff --git a/package-lock.json b/package-lock.json index f6d1e6b..2ae35b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { - "name": "OpenBuildsMachineDriver", - "version": "1.0.112", + "name": "OpenBuildsCONTROL", + "version": "1.0.119", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -10,6 +10,55 @@ "integrity": "sha1-arvcIvM8q3QgU3d6JtsuJcpScXk=", "dev": true }, + "@serialport/parser-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-byte-length/-/parser-byte-length-1.0.5.tgz", + "integrity": "sha512-GCz/v/KG2Wv7SdQ2nv8jYGBY6D4h5tibj9bs0+pnryCDAr8xmmvnesFW15FIu4rwOMgsKhCHyp7roD8bRGs63A==", + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "@serialport/parser-cctalk": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-cctalk/-/parser-cctalk-1.0.5.tgz", + "integrity": "sha512-VdoG1rRXb5deHM1c9Akn9djoJuHn030v7owYHEqpJeS6Rs6wrC4Hrkw8NxvV9ZPlMqAJ+5uJCaAUzB1tbVd3rA==", + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "@serialport/parser-delimiter": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-delimiter/-/parser-delimiter-1.0.5.tgz", + "integrity": "sha512-srDzeNwGM/GjtqK/nFDRIDpcZ6XDgkakFMXBtNDSI+XP6fqO1ynEZok8ljKJxM2ay0CNG83C6/X2xIOHvWhFYQ==", + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "@serialport/parser-readline": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-readline/-/parser-readline-1.0.5.tgz", + "integrity": "sha512-QkZoCQPHwdZOMQk7SHz3QSp7xqK4jdNql9M80oXqWt7kNhFvNXguWzf17FfQrPRIb0qiz+96+P6uAOIi02Yxbg==", + "requires": { + "@serialport/parser-delimiter": "^1.0.5", + "safe-buffer": "^5.1.1" + } + }, + "@serialport/parser-ready": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-ready/-/parser-ready-1.0.5.tgz", + "integrity": "sha512-U/ZkxyY35Z7WrDc0O8TGcGPOdwv6fGVJcZq5vXVko2MRt8wiKVD192mmbfTRZXFAX+rARXtQa3ad3yJzXVhb1g==", + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "@serialport/parser-regex": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-regex/-/parser-regex-1.0.5.tgz", + "integrity": "sha512-sX3tRuwwwGV+CZbKEUAKZD/wtG8ZRcGxbiDIm8nyzsPCGv52ck3RlQ9Vp4K8fYjcrGGwm3BWizC4uSzaTLOk1A==", + "requires": { + "safe-buffer": "^5.1.1" + } + }, "@types/node": { "version": "8.10.27", "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.27.tgz", @@ -90,11 +139,228 @@ } } }, + "ansi-bgblack": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgblack/-/ansi-bgblack-0.1.1.tgz", + "integrity": "sha1-poulAHiHcBtqr74/oNrf36juPKI=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgblue": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgblue/-/ansi-bgblue-0.1.1.tgz", + "integrity": "sha1-Z73ATtybm1J4lp2hlt6j11yMNhM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgcyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgcyan/-/ansi-bgcyan-0.1.1.tgz", + "integrity": "sha1-WEiUJWAL3p9VBwaN2Wnr/bUP52g=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bggreen": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bggreen/-/ansi-bggreen-0.1.1.tgz", + "integrity": "sha1-TjGRJIUplD9DIelr8THRwTgWr0k=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgmagenta": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgmagenta/-/ansi-bgmagenta-0.1.1.tgz", + "integrity": "sha1-myhDLAduqpmUGGcqPvvhk5HCx6E=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgred": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgred/-/ansi-bgred-0.1.1.tgz", + "integrity": "sha1-p2+Sg4OCukMpCmwXeEJPmE1vEEE=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgwhite": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgwhite/-/ansi-bgwhite-0.1.1.tgz", + "integrity": "sha1-ZQRlE3elim7OzQMxmU5IAljhG6g=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgyellow": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgyellow/-/ansi-bgyellow-0.1.1.tgz", + "integrity": "sha1-w/4usIzUdmSAKeaHTRWgs49h1E8=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-black": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-black/-/ansi-black-0.1.1.tgz", + "integrity": "sha1-9hheiJNgslRaHsUMC/Bj/EMDJFM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-blue": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-blue/-/ansi-blue-0.1.1.tgz", + "integrity": "sha1-FbgEmQ6S/JyoxUds6PaZd3wh7b8=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bold": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bold/-/ansi-bold-0.1.1.tgz", + "integrity": "sha1-PmOVCvWswq4uZw5vZ96xFdGl9QU=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-colors": { + "version": "0.2.0", + "resolved": "http://registry.npmjs.org/ansi-colors/-/ansi-colors-0.2.0.tgz", + "integrity": "sha1-csMd4qDZoszQysMMyYI+6y9kNLU=", + "requires": { + "ansi-bgblack": "^0.1.1", + "ansi-bgblue": "^0.1.1", + "ansi-bgcyan": "^0.1.1", + "ansi-bggreen": "^0.1.1", + "ansi-bgmagenta": "^0.1.1", + "ansi-bgred": "^0.1.1", + "ansi-bgwhite": "^0.1.1", + "ansi-bgyellow": "^0.1.1", + "ansi-black": "^0.1.1", + "ansi-blue": "^0.1.1", + "ansi-bold": "^0.1.1", + "ansi-cyan": "^0.1.1", + "ansi-dim": "^0.1.1", + "ansi-gray": "^0.1.1", + "ansi-green": "^0.1.1", + "ansi-grey": "^0.1.1", + "ansi-hidden": "^0.1.1", + "ansi-inverse": "^0.1.1", + "ansi-italic": "^0.1.1", + "ansi-magenta": "^0.1.1", + "ansi-red": "^0.1.1", + "ansi-reset": "^0.1.1", + "ansi-strikethrough": "^0.1.1", + "ansi-underline": "^0.1.1", + "ansi-white": "^0.1.1", + "ansi-yellow": "^0.1.1", + "lazy-cache": "^2.0.1" + } + }, + "ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-dim": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-dim/-/ansi-dim-0.1.1.tgz", + "integrity": "sha1-QN5MYDqoCG2Oeoa4/5mNXDbu/Ww=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-green": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-green/-/ansi-green-0.1.1.tgz", + "integrity": "sha1-il2al55FjVfEDjNYCzc5C44Q0Pc=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-grey": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-grey/-/ansi-grey-0.1.1.tgz", + "integrity": "sha1-WdmLasK6GfilF5jphT+6eDOaM8E=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-hidden": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-hidden/-/ansi-hidden-0.1.1.tgz", + "integrity": "sha1-7WpMSY0rt8uyidvyqNHcyFZ/rg8=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-inverse": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-inverse/-/ansi-inverse-0.1.1.tgz", + "integrity": "sha1-tq9Fgm/oJr+1KKbHmIV5Q1XM0mk=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-italic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-italic/-/ansi-italic-0.1.1.tgz", + "integrity": "sha1-EEdDRj9iXBQqA2c5z4XtpoiYbyM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-magenta": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-magenta/-/ansi-magenta-0.1.1.tgz", + "integrity": "sha1-BjtboW+z8j4c/aKwfAqJ3hHkMK4=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-reset": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-reset/-/ansi-reset-0.1.1.tgz", + "integrity": "sha1-5+cSksPH3c1NYu9KbHwFmAkRw7c=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-strikethrough": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-strikethrough/-/ansi-strikethrough-0.1.1.tgz", + "integrity": "sha1-2Eh3FAss/wfRyT685pkE9oiF5Wg=", + "requires": { + "ansi-wrap": "0.1.0" + } }, "ansi-styles": { "version": "3.2.1", @@ -105,12 +371,84 @@ "color-convert": "^1.9.0" } }, + "ansi-underline": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-underline/-/ansi-underline-0.1.1.tgz", + "integrity": "sha1-38kg9Ml7WXfqFi34/7mIMIqqcaQ=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-white": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-white/-/ansi-white-0.1.1.tgz", + "integrity": "sha1-nHe3wZPF7pkuYBHTbsTJIbRXiUQ=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" + }, + "ansi-yellow": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-yellow/-/ansi-yellow-0.1.1.tgz", + "integrity": "sha1-y5NW8vRscy8OMZnmEClVp32oPB0=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, "app-builder-bin": { "version": "1.11.2", "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-1.11.2.tgz", "integrity": "sha1-PPsoy4cxJTBy5AJRPYLc2pe7TSQ=", "dev": true }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -119,6 +457,29 @@ "sprintf-js": "~1.0.2" } }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-swap": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arr-swap/-/arr-swap-1.0.1.tgz", + "integrity": "sha1-FHWQ7WX8gVvAf+8Jl8Llgj1kNTQ=", + "requires": { + "is-number": "^3.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + } + } + } + }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -150,6 +511,14 @@ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", "dev": true }, + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "requires": { + "lodash": "^4.17.10" + } + }, "async-exit-hook": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/async-exit-hook/-/async-exit-hook-2.0.1.tgz", @@ -167,6 +536,62 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", "dev": true }, + "avrgirl-arduino": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/avrgirl-arduino/-/avrgirl-arduino-3.0.0.tgz", + "integrity": "sha512-rEZiJ5yHgQ+/WD07cJu/Y/7fWII/fiMzqpxxCz4/x4Cwym5yLZiO49u5RYW6u+lQp8cT05/pUbdkk+RQkPRE/w==", + "requires": { + "async": "^2.1.2", + "awty": "^0.1.0", + "browser-serialport": "git+https://github.com/noopkat/browser-serialport.git#c8628c41c11890d3058875994c15f83f2df8185b", + "chip.avr.avr109": "^1.1.0", + "colors": "^1.1.2", + "graceful-fs": "^4.1.2", + "intel-hex": "^0.1.1", + "minimist": "^1.2.0", + "serialport": "^6.2.1", + "stk500": "^2.0.0", + "stk500-v2": "^1.0.3" + }, + "dependencies": { + "bindings": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", + "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" + }, + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "serialport": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/serialport/-/serialport-6.2.2.tgz", + "integrity": "sha512-BQqTR06ZXKwKB6rUjeANm3aIZo0rqNbQsrQX5zKEDcNY4rxiu5dvdcfIOaAGuZkhW7jAKJsgKC5TjeURtLVuOQ==", + "requires": { + "@serialport/parser-byte-length": "^1.0.5", + "@serialport/parser-cctalk": "^1.0.5", + "@serialport/parser-delimiter": "^1.0.5", + "@serialport/parser-readline": "^1.0.5", + "@serialport/parser-ready": "^1.0.5", + "@serialport/parser-regex": "^1.0.5", + "bindings": "1.3.0", + "commander": "^2.13.0", + "debug": "^3.1.0", + "nan": "^2.9.2", + "prebuild-install": "^4.0.0", + "promirepl": "^1.0.1", + "prompt-list": "^3.2.0", + "safe-buffer": "^5.1.2" + } + } + } + }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -179,6 +604,14 @@ "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", "dev": true }, + "awty": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/awty/-/awty-0.1.0.tgz", + "integrity": "sha1-i3BcHuMTn41unylAnZC3T5PoQLo=", + "requires": { + "isval": "0.0.2" + } + }, "backo2": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", @@ -228,6 +661,44 @@ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz", "integrity": "sha1-FK1hE4EtLTfXLme0ystLtyZQXxE=" }, + "bl": { + "version": "1.2.2", + "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "blob": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", @@ -336,6 +807,34 @@ "concat-map": "0.0.1" } }, + "browser-serialport": { + "version": "git+https://github.com/noopkat/browser-serialport.git#c8628c41c11890d3058875994c15f83f2df8185b", + "from": "git+https://github.com/noopkat/browser-serialport.git#c8628c41c11890d3058875994c15f83f2df8185b" + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "buffer-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs=" + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" + }, "buffer-from": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", @@ -434,6 +933,39 @@ "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" }, + "chip.avr.avr109": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chip.avr.avr109/-/chip.avr.avr109-1.1.1.tgz", + "integrity": "sha512-+0+cvkHDsy/gizui/zFirTtDpvTQumJSs2SE9lT2BAzyE+CslXWQN9blfjMjhChcyNdZT8mFUQjETVne1gxBBQ==", + "requires": { + "intel-hex": "*" + } + }, + "choices-separator": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/choices-separator/-/choices-separator-2.0.0.tgz", + "integrity": "sha1-kv0XYxgteQM/XFxR0Lo1LlVnxpY=", + "requires": { + "ansi-dim": "^0.1.1", + "debug": "^2.6.6", + "strip-color": "^0.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==" + }, "chromium-pickle-js": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", @@ -496,6 +1028,24 @@ } } }, + "clone-deep": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-1.0.0.tgz", + "integrity": "sha512-hmJRX8x1QOJVV+GUjOBzi6iauhPqc9hIF6xitWRBbiPZOBb6vGo/mDRIK9P74RTKSQK7AE8B0DDWY/vpRrPmQw==", + "requires": { + "for-own": "^1.0.0", + "is-plain-object": "^2.0.4", + "kind-of": "^5.0.0", + "shallow-clone": "^1.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -505,8 +1055,16 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } }, "color-convert": { "version": "1.9.2", @@ -523,6 +1081,11 @@ "integrity": "sha1-SxQVMEz1ACjqgWQ2Q72C6gWANok=", "dev": true }, + "colors": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", + "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==" + }, "combined-stream": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", @@ -621,6 +1184,11 @@ "xdg-basedir": "^3.0.0" } }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, "content-disposition": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", @@ -641,6 +1209,11 @@ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, "copyfiles": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/copyfiles/-/copyfiles-1.2.0.tgz", @@ -658,8 +1231,7 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "create-error-class": { "version": "3.0.2", @@ -724,11 +1296,18 @@ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", "dev": true }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, "deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha1-xPp8lUBKF6nD6Mp+FTcxK3NjMKw=", - "dev": true + "integrity": "sha1-xPp8lUBKF6nD6Mp+FTcxK3NjMKw=" }, "define-properties": { "version": "1.1.2", @@ -739,12 +1318,25 @@ "object-keys": "^1.0.8" } }, + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", "dev": true }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -755,6 +1347,11 @@ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" + }, "directory-tree": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/directory-tree/-/directory-tree-2.1.0.tgz", @@ -1071,6 +1668,14 @@ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "requires": { + "once": "^1.4.0" + } + }, "engine.io": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.0.tgz", @@ -1129,6 +1734,11 @@ "is-arrayish": "^0.2.1" } }, + "error-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/error-symbol/-/error-symbol-0.1.0.tgz", + "integrity": "sha1-Ck2uN9YA0VopukU9jvkg8YRDM/Y=" + }, "es6-promise": { "version": "4.2.4", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", @@ -1171,6 +1781,11 @@ "strip-eof": "^1.0.0" } }, + "expand-template": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.1.tgz", + "integrity": "sha512-cebqLtV8KOZfw0UI8TEFWxtczxxC1jvyUvx6H4fyp1K1FN7A4Q+uggVUlOsI1K8AGU0rwOGqP8nCapdrw8CYQg==" + }, "express": { "version": "4.16.3", "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", @@ -1224,6 +1839,14 @@ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", "dev": true }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, "extract-zip": { "version": "1.6.7", "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", @@ -1308,6 +1931,19 @@ "pinkie-promise": "^2.0.0" } }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "requires": { + "for-in": "^1.0.1" + } + }, "foreach": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", @@ -1345,6 +1981,11 @@ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, "fs-extra": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", @@ -1374,6 +2015,21 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -1401,6 +2057,11 @@ "assert-plus": "^1.0.0" } }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, "glob": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", @@ -1487,6 +2148,11 @@ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=" }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, "home-path": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/home-path/-/home-path-1.0.6.tgz", @@ -1566,6 +2232,11 @@ "wrappy": "1" } }, + "info-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/info-symbol/-/info-symbol-0.1.0.tgz", + "integrity": "sha1-J4QdcoZ920JCzWEtecEGM4gcang=" + }, "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", @@ -1574,8 +2245,12 @@ "ini": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=", - "dev": true + "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=" + }, + "intel-hex": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/intel-hex/-/intel-hex-0.1.1.tgz", + "integrity": "sha1-glRF26vauNeYjG39tHDfu7Gf1JQ=" }, "invert-kv": { "version": "1.0.0", @@ -1593,6 +2268,21 @@ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -1622,6 +2312,43 @@ "ci-info": "^1.0.0" } }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, "is-finite": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", @@ -1635,7 +2362,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, "requires": { "number-is-nan": "^1.0.0" } @@ -1656,6 +2382,11 @@ "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", "dev": true }, + "is-number": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-6.0.0.tgz", + "integrity": "sha512-Wu1VHeILBK8KAWJUAiSZQX94GmOE45Rg6/538fKwiloUu21KncEkYGPqob2oSZ5mUT73vLGrHQjKw3KMPwfDzg==" + }, "is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", @@ -1671,6 +2402,14 @@ "path-is-inside": "^1.0.1" } }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, "is-redirect": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", @@ -1701,6 +2440,11 @@ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "dev": true }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, "isarray": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", @@ -1718,12 +2462,22 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", "dev": true }, + "isval": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/isval/-/isval-0.0.2.tgz", + "integrity": "sha1-HOsBcciRE+P1CYpPczbKrzO+8D8=" + }, "js-yaml": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", @@ -1795,6 +2549,14 @@ "verror": "1.10.0" } }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + }, "klaw": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", @@ -1804,6 +2566,11 @@ "graceful-fs": "^4.1.9" } }, + "koalas": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/koalas/-/koalas-1.0.2.tgz", + "integrity": "sha1-MYQz8HQjXbePrlZhoCqMpT7ilc0=" + }, "latest-version": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", @@ -1813,6 +2580,14 @@ "package-json": "^4.0.0" } }, + "lazy-cache": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", + "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", + "requires": { + "set-getter": "^0.1.0" + } + }, "lazy-val": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/lazy-val/-/lazy-val-1.0.3.tgz", @@ -1876,6 +2651,29 @@ "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" }, + "log-ok": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/log-ok/-/log-ok-0.1.1.tgz", + "integrity": "sha1-vqPdNqzQuKckDXhza1uXxlREozQ=", + "requires": { + "ansi-green": "^0.1.1", + "success-symbol": "^0.1.0" + } + }, + "log-utils": { + "version": "0.2.1", + "resolved": "http://registry.npmjs.org/log-utils/-/log-utils-0.2.1.tgz", + "integrity": "sha1-pMIXoN2aUFFdm5ICBgkas9TgMc8=", + "requires": { + "ansi-colors": "^0.2.0", + "error-symbol": "^0.1.0", + "info-symbol": "^0.1.0", + "log-ok": "^0.1.1", + "success-symbol": "^0.1.0", + "time-stamp": "^1.0.1", + "warning-symbol": "^0.1.0" + } + }, "loud-rejection": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", @@ -1931,6 +2729,14 @@ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", "dev": true }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "^1.0.0" + } + }, "md5": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/md5/-/md5-2.2.1.tgz", @@ -2015,6 +2821,11 @@ "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=", "dev": true }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -2028,6 +2839,22 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "requires": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" + } + } + }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", @@ -2041,6 +2868,11 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + }, "nan": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", @@ -2057,6 +2889,14 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" }, + "node-abi": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.5.0.tgz", + "integrity": "sha512-9g2twBGSP6wIR5PW7tXvAWnEWKJDH/VskdXp168xsw9VVxpEGov8K4jsP4/VeoC7b2ZAyzckvMCuQuQlw44lXg==", + "requires": { + "semver": "^5.4.1" + } + }, "noms": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/noms/-/noms-0.0.0.tgz", @@ -2067,6 +2907,11 @@ "readable-stream": "~1.0.31" } }, + "noop-logger": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", + "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" + }, "normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", @@ -2088,6 +2933,17 @@ "path-key": "^2.0.0" } }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, "nugget": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/nugget/-/nugget-2.0.1.tgz", @@ -2123,8 +2979,7 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "oauth-sign": { "version": "0.9.0", @@ -2135,19 +2990,79 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-component": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=" }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "http://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "http://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + } + } + }, "object-keys": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==" }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "^3.0.0" + } + }, "object.assign": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", @@ -2175,6 +3090,11 @@ "wrappy": "1" } }, + "os-homedir": { + "version": "1.0.2", + "resolved": "http://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, "os-locale": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", @@ -2375,6 +3295,40 @@ } } }, + "pointer-symbol": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pointer-symbol/-/pointer-symbol-1.0.0.tgz", + "integrity": "sha1-YPkRAgTqepKbYmRKITFVQ8uz1Ec=" + }, + "prebuild-install": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-4.0.0.tgz", + "integrity": "sha512-7tayxeYboJX0RbVzdnKyGl2vhQRWr6qfClEXDhOkXjuaOKCw2q8aiuFhONRYVsG/czia7KhpykIlI2S2VaPunA==", + "requires": { + "detect-libc": "^1.0.3", + "expand-template": "^1.0.2", + "github-from-package": "0.0.0", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "node-abi": "^2.2.0", + "noop-logger": "^0.1.1", + "npmlog": "^4.0.1", + "os-homedir": "^1.0.1", + "pump": "^2.0.1", + "rc": "^1.1.6", + "simple-get": "^2.7.0", + "tar-fs": "^1.13.0", + "tunnel-agent": "^0.6.0", + "which-pm-runs": "^1.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + } + } + }, "prepend-http": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", @@ -2394,8 +3348,7 @@ "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha1-o31zL0JxtKsa0HDTVQjoKQeI/6o=", - "dev": true + "integrity": "sha1-o31zL0JxtKsa0HDTVQjoKQeI/6o=" }, "progress-stream": { "version": "1.2.0", @@ -2452,6 +3405,172 @@ } } }, + "promirepl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promirepl/-/promirepl-1.0.1.tgz", + "integrity": "sha1-KVGq66K/P+InT/Y6FtlMBMpghy4=" + }, + "prompt-actions": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/prompt-actions/-/prompt-actions-3.0.2.tgz", + "integrity": "sha512-dhz2Fl7vK+LPpmnQ/S/eSut4BnH4NZDLyddHKi5uTU/2PDn3grEMGkgsll16V5RpVUh/yxdiam0xsM0RD4xvtg==", + "requires": { + "debug": "^2.6.8" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "prompt-base": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/prompt-base/-/prompt-base-4.1.0.tgz", + "integrity": "sha512-svGzgLUKZoqomz9SGMkf1hBG8Wl3K7JGuRCXc/Pv7xw8239hhaTBXrmjt7EXA9P/QZzdyT8uNWt9F/iJTXq75g==", + "requires": { + "component-emitter": "^1.2.1", + "debug": "^3.0.1", + "koalas": "^1.0.2", + "log-utils": "^0.2.1", + "prompt-actions": "^3.0.2", + "prompt-question": "^5.0.1", + "readline-ui": "^2.2.3", + "readline-utils": "^2.2.3", + "static-extend": "^0.1.2" + } + }, + "prompt-checkbox": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/prompt-checkbox/-/prompt-checkbox-2.2.0.tgz", + "integrity": "sha512-T/QWgkdUmKjRSr0FQlV8O+LfgmBk8PwDbWhzllm7mwWNAjs3qOVuru5Y1gV4/14L73zCncqcuwGwvnDyVcVgvA==", + "requires": { + "ansi-cyan": "^0.1.1", + "debug": "^2.6.8", + "prompt-base": "^4.0.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "prompt-choices": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/prompt-choices/-/prompt-choices-4.1.0.tgz", + "integrity": "sha512-ZNYLv6rW9z9n0WdwCkEuS+w5nUAGzRgtRt6GQ5aFNFz6MIcU7nHFlHOwZtzy7RQBk80KzUGPSRQphvMiQzB8pg==", + "requires": { + "arr-flatten": "^1.1.0", + "arr-swap": "^1.0.1", + "choices-separator": "^2.0.0", + "clone-deep": "^4.0.0", + "collection-visit": "^1.0.0", + "define-property": "^2.0.2", + "is-number": "^6.0.0", + "kind-of": "^6.0.2", + "koalas": "^1.0.2", + "log-utils": "^0.2.1", + "pointer-symbol": "^1.0.0", + "radio-symbol": "^2.0.0", + "set-value": "^3.0.0", + "strip-color": "^0.1.0", + "terminal-paginator": "^2.0.2", + "toggle-array": "^1.0.1" + }, + "dependencies": { + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "shallow-clone": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.0.tgz", + "integrity": "sha512-Drg+nOI+ofeuslBf0nulyWLZhK1BZprqNvPJaiB4VvES+9gC6GG+qOVAfuO12zVSgxq9SKevcme7S3uDT6Be8w==", + "requires": { + "kind-of": "^6.0.2" + } + } + } + }, + "prompt-list": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/prompt-list/-/prompt-list-3.2.0.tgz", + "integrity": "sha512-PDao47cmC9+m2zEUghH+WIIascd8SuyyWO+akuUubd0XxOQyUH96HMdIcL3YnNS8kJUHwddH1rHVgL9vZA1QsQ==", + "requires": { + "ansi-cyan": "^0.1.1", + "ansi-dim": "^0.1.1", + "prompt-radio": "^1.2.1" + } + }, + "prompt-question": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/prompt-question/-/prompt-question-5.0.2.tgz", + "integrity": "sha512-wreaLbbu8f5+7zXds199uiT11Ojp59Z4iBi6hONlSLtsKGTvL2UY8VglcxQ3t/X4qWIxsNCg6aT4O8keO65v6Q==", + "requires": { + "clone-deep": "^1.0.0", + "debug": "^3.0.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "kind-of": "^5.0.2", + "koalas": "^1.0.2", + "prompt-choices": "^4.0.5" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "prompt-radio": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prompt-radio/-/prompt-radio-1.2.1.tgz", + "integrity": "sha512-vH1iAkgbWyvZBC1BTajydiHmwJP4F1b684gq0fm2wOjPVW1zaDo01OXWr/Dske0XdoHhtZFNMOXNj/ZUSRBywg==", + "requires": { + "debug": "^2.6.8", + "prompt-checkbox": "^2.2.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, "proxy-addr": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", @@ -2473,6 +3592,15 @@ "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", "dev": true }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", @@ -2484,6 +3612,16 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", "integrity": "sha1-NJzfbu+J7EXBLX1es/wMhwNDptg=" }, + "radio-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/radio-symbol/-/radio-symbol-2.0.0.tgz", + "integrity": "sha1-eqm/xQSFY21S3XbWqOYxspB5muE=", + "requires": { + "ansi-gray": "^0.1.1", + "ansi-green": "^0.1.1", + "is-windows": "^1.0.1" + } + }, "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", @@ -2527,7 +3665,6 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", "integrity": "sha1-zZJL9SAKB1uDwYjNa54hG3/A0+0=", - "dev": true, "requires": { "deep-extend": "^0.6.0", "ini": "~1.3.0", @@ -2538,8 +3675,7 @@ "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" } } }, @@ -2627,6 +3763,80 @@ } } }, + "readline-ui": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/readline-ui/-/readline-ui-2.2.3.tgz", + "integrity": "sha512-ix7jz0PxqQqcIuq3yQTHv1TOhlD2IHO74aNO+lSuXsRYm1d+pdyup1yF3zKyLK1wWZrVNGjkzw5tUegO2IDy+A==", + "requires": { + "component-emitter": "^1.2.1", + "debug": "^2.6.8", + "readline-utils": "^2.2.1", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "readline-utils": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/readline-utils/-/readline-utils-2.2.3.tgz", + "integrity": "sha1-b4R9a48ZFcORtYHDZ81HhzhiNRo=", + "requires": { + "arr-flatten": "^1.1.0", + "extend-shallow": "^2.0.1", + "is-buffer": "^1.1.5", + "is-number": "^3.0.0", + "is-windows": "^1.0.1", + "koalas": "^1.0.2", + "mute-stream": "0.0.7", + "strip-color": "^0.1.0", + "window-size": "^1.1.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + } + } + } + }, "redent": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", @@ -3762,14 +4972,46 @@ "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-getter": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz", + "integrity": "sha1-12nBgsnVpR9AkUXy+6guXoboA3Y=", + "requires": { + "to-object-path": "^0.3.0" + } + }, + "set-value": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-3.0.0.tgz", + "integrity": "sha512-tqkg9wJ2TOsxbzIMG5NMAmzjdbDTAD0in7XuUzmFpJE4Ipi2QFBfgC2Z1/gfxcAmWCPsuutiEJyDIMRsrjrMOQ==", + "requires": { + "is-plain-object": "^2.0.4" + } }, "setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=" }, + "shallow-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", + "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", + "requires": { + "is-extendable": "^0.1.1", + "kind-of": "^5.0.0", + "mixin-object": "^2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -3788,8 +5030,22 @@ "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "simple-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", + "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=" + }, + "simple-get": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", + "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", + "requires": { + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } }, "single-line-log": { "version": "1.1.2", @@ -3929,16 +5185,117 @@ "integrity": "sha1-5sgLYjEj19gM8TLOU480YokHJQI=", "dev": true }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "http://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "http://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, "statuses": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic=" }, + "stk500": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/stk500/-/stk500-2.0.0.tgz", + "integrity": "sha512-vTj0tRANVjbFVORFsTc6QNb/DUDDAqGwydj/m/tpBN2ak3QbBiF3AJmu+XbCylsjg1OKGF/f2z8BJa1wYvVsyw==", + "requires": { + "async": "^0.9.0", + "buffer-equal": "0.0.1" + }, + "dependencies": { + "async": { + "version": "0.9.2", + "resolved": "http://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" + } + } + }, + "stk500-v2": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stk500-v2/-/stk500-v2-1.0.3.tgz", + "integrity": "sha512-r7iL4uvz07sP9R0VHgJbpEokDW3dgZVXUHntEjM+5JtRWKA5sv/3Oi5UdlD1LisRa6ZOVf+Y08WZNzjsn173DQ==", + "requires": { + "async": "^0.9.0", + "buffer-equal": "0.0.1" + }, + "dependencies": { + "async": { + "version": "0.9.2", + "resolved": "http://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" + } + } + }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3955,7 +5312,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3969,6 +5325,11 @@ "is-utf8": "^0.2.0" } }, + "strip-color": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/strip-color/-/strip-color-0.1.0.tgz", + "integrity": "sha1-EG9l09PmotlAHKwOsM6LinArT3s=" + }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", @@ -3987,8 +5348,12 @@ "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "success-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/success-symbol/-/success-symbol-0.1.0.tgz", + "integrity": "sha1-JAIuSG878c3KCUKDt2nEctO3KJc=" }, "sumchecker": { "version": "1.3.1", @@ -4020,6 +5385,71 @@ "has-flag": "^3.0.0" } }, + "tar-fs": { + "version": "1.16.3", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.3.tgz", + "integrity": "sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==", + "requires": { + "chownr": "^1.0.1", + "mkdirp": "^0.5.1", + "pump": "^1.0.0", + "tar-stream": "^1.1.2" + }, + "dependencies": { + "pump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "requires": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "temp-file": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.1.3.tgz", @@ -4041,6 +5471,26 @@ "execa": "^0.7.0" } }, + "terminal-paginator": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/terminal-paginator/-/terminal-paginator-2.0.2.tgz", + "integrity": "sha512-IZMT5ECF9p4s+sNCV8uvZSW9E1+9zy9Ji9xz2oee8Jfo7hUFpauyjxkhfRcIH6Lu3Wdepv5D1kVRc8Hx74/LfQ==", + "requires": { + "debug": "^2.6.6", + "extend-shallow": "^2.0.1", + "log-utils": "^0.2.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, "throttleit": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-0.0.2.tgz", @@ -4089,6 +5539,11 @@ } } }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=" + }, "timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", @@ -4100,6 +5555,27 @@ "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=" }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "^3.0.2" + } + }, + "toggle-array": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toggle-array/-/toggle-array-1.0.1.tgz", + "integrity": "sha1-y/WEB5K9UJfzMReugkyTKv/ofVg=", + "requires": { + "isobject": "^3.0.0" + } + }, "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", @@ -4129,7 +5605,6 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, "requires": { "safe-buffer": "^5.0.1" } @@ -4239,8 +5714,7 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "utils-merge": { "version": "1.0.1", @@ -4279,6 +5753,11 @@ "extsprintf": "^1.2.0" } }, + "warning-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/warning-symbol/-/warning-symbol-0.1.0.tgz", + "integrity": "sha1-uzHdEbeg+dZ6su2V9Fe2WCW7rSE=" + }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -4294,6 +5773,19 @@ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, + "which-pm-runs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", + "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=" + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } + }, "widest-line": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", @@ -4336,6 +5828,25 @@ } } }, + "window-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-1.1.1.tgz", + "integrity": "sha512-5D/9vujkmVQ7pSmc0SCBmHXbkv6eaHwXEx65MywhmUMsI8sGqJ972APq1lotfcwMKPFLuCFfL8xGHLIp7jaBmA==", + "requires": { + "define-property": "^1.0.0", + "is-number": "^3.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + } + } + } + }, "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", @@ -4404,8 +5915,7 @@ "xtend": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" }, "y18n": { "version": "4.0.0", diff --git a/package.json b/package.json index 56f1d37..59ae9d2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "OpenBuildsCONTROL", - "version": "1.0.119", + "version": "1.0.120", "license": "AGPL-3.0", "description": "Machine Interface Driver for OpenBuilds", "author": "github.com/openbuilds ", @@ -11,6 +11,7 @@ "ncp": "^2.0.0" }, "dependencies": { + "avrgirl-arduino": "^3.0.0", "directory-tree": "^2.1.0", "electron-updater": "^2.23.3", "express": "^4.16.2", @@ -64,7 +65,8 @@ ], "files": [ "**/*", - "ssl/**/*" + "ssl/**/*", + "firmware/**/*" ], "extraFiles": [ "ssl"