From 2959a352807913cb7c4f6cdb841bc1c90aa478da Mon Sep 17 00:00:00 2001 From: root Date: Mon, 25 Feb 2019 09:19:57 -0600 Subject: [PATCH] Add new icon for sat and add colored transmitter lines --- satnogs.py | 32 +-- satnogs_api_client.pyc | Bin 5049 -> 0 bytes static/globe/Worker.js | 73 ------- static/globe/active-station-marker.png | Bin 1688 -> 0 bytes static/globe/globe.html | 190 +----------------- static/globe/moment.min.js | 1 - static/globe/satellite-marker-light.png | Bin 2598 -> 0 bytes static/globe/satellite.js | 1 - static/globe/station-marker.png | Bin 1966 -> 0 bytes static/globe2/Worker.js | 73 ------- static/globe2/active-station-marker.png | Bin 1688 -> 0 bytes static/globe2/globe.html | 40 +--- static/globe2/moment.min.js | 1 - static/globe2/satellite-marker-dark.png | Bin 2531 -> 0 bytes static/globe2/satellite-marker-light.png | Bin 2598 -> 0 bytes static/globe2/satellite.js | 1 - static/globe2/station-marker.png | Bin 1966 -> 0 bytes .../satellite-marker-dark.png => sat.png} | Bin 18 files changed, 22 insertions(+), 390 deletions(-) delete mode 100644 satnogs_api_client.pyc delete mode 100644 static/globe/Worker.js delete mode 100644 static/globe/active-station-marker.png delete mode 100644 static/globe/moment.min.js delete mode 100644 static/globe/satellite-marker-light.png delete mode 100644 static/globe/satellite.js delete mode 100644 static/globe/station-marker.png delete mode 100644 static/globe2/Worker.js delete mode 100644 static/globe2/active-station-marker.png delete mode 100644 static/globe2/moment.min.js delete mode 100644 static/globe2/satellite-marker-dark.png delete mode 100644 static/globe2/satellite-marker-light.png delete mode 100644 static/globe2/satellite.js delete mode 100644 static/globe2/station-marker.png rename static/{globe/satellite-marker-dark.png => sat.png} (100%) diff --git a/satnogs.py b/satnogs.py index 4657eae..c981166 100644 --- a/satnogs.py +++ b/satnogs.py @@ -23,6 +23,7 @@ Passes = defaultdict(list) Stations = [] TLEs = defaultdict(list) Transmitters = defaultdict(dict) +SatDescrip = defaultdict(str) CZML = [] def getFuture(): @@ -33,7 +34,7 @@ def getFuture(): observations = defaultdict(dict ) start = datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S%z') - end = (datetime.utcnow() + timedelta(hours=4,minutes=30)).strftime('%Y-%m-%dT%H:%M:%S%z') + end = (datetime.utcnow() + timedelta(hours=2,minutes=30)).strftime('%Y-%m-%dT%H:%M:%S%z') passes = get_paginated_endpoint("https://network.satnogs.org/api/jobs/") obs = get_paginated_endpoint("https://network.satnogs.org/api/observations/?end="+end+"&format=json&start="+start) @@ -96,6 +97,10 @@ def updateTransmitters(): for x in tqdm(temp): Transmitters[x["norad_cat_id"]][x["uuid"]] = [x["description"],[random.randint(0,255),random.randint(0,255),random.randint(0,255),255]] + for x in Transmitters.keys(): + for y in Transmitters[x].keys(): + SatDescrip[x] += '
'+Transmitters[x][y][0]+'
' + @scheduler.scheduled_job('interval',hours=1) def updatePasses(): getFuture() @@ -108,6 +113,8 @@ def updateStations(): @scheduler.scheduled_job('interval',minutes=30) def updateCZML(): + global CZML + CZML=[] doc = {} doc["id"] = "document" doc["name"] = "sats" @@ -140,26 +147,28 @@ def updateCZML(): station["position"] = {} station["point"]["pixelSize"]=7.0 station["position"]["cartographicDegrees"] = [x["lng"],x['lat'],x["altitude"]] - station["description"] = "ID: "+str(x["id"])+"
Total Observations: "+str(x["observations"])+"
Status: "+x["status"]+"
QTH: "+x["qthlocator"]+"
Description: "+x["description"] + station["description"] = "ID: "+str(x["id"])+"
Total Observations: " + station["description"]+=str(x["observations"])+"
Status: "+x["status"]+"
QTH: " + station["description"]+=x["qthlocator"]+"
Description: "+x["description"] CZML.append(station) - #CZML.append({"point": {"color": {"rgba": [255, 0, 0, 255]}, "pixelSize": 7.0}, "position": {"interpolationDegree": 5, "epoch": "2019-02-20T18:15:31Z", "cartographicRadians": [0, 0.3926577985153905, 1.1691578160879883, 656892.3748016874, 60, 0.3350659338545192, 1.1089605458602834, 655874.386965892, 120, 0.2890197452488876, 1.047837527650023, 654785.5379851013, 180, 0.2509867794693532, 0.9860631482739753, 653641.7898772621, 240, 0.21870672074331488, 0.9238091562480084, 652460.3348020877, 300, 0.19067493892518161, 0.8611882322528641, 651259.3247753858, 360, 0.16585423673939337, 0.7982775055158141, 650057.5822615812, 420, 0.14350728383857447, 0.7351319146596802, 648874.2959984386, 480, 0.12309537649675795, 0.6717921438438812, 647728.7068061114, 540, 0.10421508370803956, 0.60828951924056, 646639.7884730175], "referenceFrame": "INERTIAL", "interpolationAlgorithm": "LAGRANGE"}, "show": True, "id": "485092", "name": "KKS-1 (KISEKI)"}) - #return - + for x in tqdm(Sats.keys()): for y in Sats[x]: sat = {} sat["id"] = str(y["id"]) sat["name"] = TLEs[x][0] sat["show"] = True - sat["point"] = {} - sat["point"]["color"] = {} - sat["point"]["color"]["rgba"] = [255,0,0,255] - sat["point"]["pixelSize"]=8.0 + #sat["point"] = {} + #sat["point"]["color"] = {} + #sat["point"]["color"]["rgba"] = [255,0,0,255] + #sat["point"]["pixelSize"]=8.0 + sat["billboard"] = {"image":"static/sat.png","scale":0.50} sat["position"] = {} sat["position"]["cartographicDegrees"]=[] + sat["description"] = SatDescrip[x] temp = y["start"] satObj = EarthSatellite(TLEs[x][1],TLEs[x][2],TLEs[x][0]) time = 0 @@ -177,13 +186,12 @@ def updateCZML(): sat["position"]["epoch"] = (y["start"].isoformat()+"Z").replace("+00:00","") sat["path"] = {"show":{"interval":(y["start"].isoformat()+"Z").replace("+00:00","")+"/"+((y["end"]+timedelta(minutes=1)).isoformat()+"Z").replace("+00:00",""),"boolean":True},"width":2,"material":{"solidColor":{"color":{"rgba":[0,255,0,255]}}},"leadTime":100000,"trailTime":100000 } - ##sat["label"] = {"show":{"interval":(y["start"].isoformat()+"Z").replace("+00:00","")+"/"+((y["end"]+timedelta(minutes=1)).isoformat()+"Z").replace("+00:00",""),"boolean":True},"horizontalOrigin":"LEFT","font":"12px sans-serif","text":TLEs[x][0]} CZML.append(sat) for x in tqdm(Sats.keys()): for y in Sats[x]: sat = {} sat["id"] = str(y["id"])+"Link" - sat["polyline"] = {"show":{"interval":(y["start"].isoformat()+"Z").replace("+00:00","")+"/"+((y["end"]+timedelta(minutes=1)).isoformat()+"Z").replace("+00:00",""),"boolean":True},"width":3,"material":{"solidColor":{"color":{"rgba":[255,0,0,255]}}},"followSurface":False,"positions":{"references":[str(y["id"])+"#position",str(y["station"])+"#position"]}} + sat["polyline"] = {"show":{"interval":(y["start"].isoformat()+"Z").replace("+00:00","")+"/"+((y["end"]+timedelta(minutes=1)).isoformat()+"Z").replace("+00:00",""),"boolean":True},"width":2,"material":{"solidColor":{"color":{"rgba":y["transmitter"][1]}}},"followSurface":False,"positions":{"references":[str(y["id"])+"#position",str(y["station"])+"#position"]}} CZML.append(sat) @@ -223,4 +231,4 @@ updateCZML() #updateTLE() #updatePasses() scheduler.start() -app.run(use_reloader=False,host = "0.0.0.0",port=5001) \ No newline at end of file +app.run(use_reloader=False,host = "0.0.0.0",port=5001) diff --git a/satnogs_api_client.pyc b/satnogs_api_client.pyc deleted file mode 100644 index 91a2e0bcb2f30ce869fb71493d419f57f5680b25..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5049 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 iSflD^Z|XZ>Zth<*M&bA%MNYZ^0000)lE diff --git a/static/globe/globe.html b/static/globe/globe.html index 313a611..0bb0649 100644 --- a/static/globe/globe.html +++ b/static/globe/globe.html @@ -1,189 +1 @@ - - - - - - - - - - - - -
- - - -Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License + Use just https://satnogs-dev.jwgtechs.com \ No newline at end of file diff --git a/static/globe/moment.min.js b/static/globe/moment.min.js deleted file mode 100644 index 2a3358f..0000000 --- a/static/globe/moment.min.js +++ /dev/null @@ -1 +0,0 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";var e,i;function c(){return e.apply(null,arguments)}function o(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function u(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function l(e){return void 0===e}function d(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function h(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function f(e,t){var n,s=[];for(n=0;n>>0,s=0;sDe(e)?(r=e+1,o-De(e)):(r=e,o),{year:r,dayOfYear:a}}function Ie(e,t,n){var s,i,r=Ve(e.year(),t,n),a=Math.floor((e.dayOfYear()-r-1)/7)+1;return a<1?s=a+Ae(i=e.year()-1,t,n):a>Ae(e.year(),t,n)?(s=a-Ae(e.year(),t,n),i=e.year()+1):(i=e.year(),s=a),{week:s,year:i}}function Ae(e,t,n){var s=Ve(e,t,n),i=Ve(e+1,t,n);return(De(e)-s+i)/7}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),H("week","w"),H("isoWeek","W"),L("week",5),L("isoWeek",5),ue("w",B),ue("ww",B,z),ue("W",B),ue("WW",B,z),fe(["w","ww","W","WW"],function(e,t,n,s){t[s.substr(0,1)]=k(e)});I("d",0,"do","day"),I("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),I("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),I("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),H("day","d"),H("weekday","e"),H("isoWeekday","E"),L("day",11),L("weekday",11),L("isoWeekday",11),ue("d",B),ue("e",B),ue("E",B),ue("dd",function(e,t){return t.weekdaysMinRegex(e)}),ue("ddd",function(e,t){return t.weekdaysShortRegex(e)}),ue("dddd",function(e,t){return t.weekdaysRegex(e)}),fe(["dd","ddd","dddd"],function(e,t,n,s){var i=n._locale.weekdaysParse(e,s,n._strict);null!=i?t.d=i:g(n).invalidWeekday=e}),fe(["d","e","E"],function(e,t,n,s){t[s]=k(e)});var je="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var Ze="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var ze="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var $e=ae;var qe=ae;var Je=ae;function Be(){function e(e,t){return t.length-e.length}var t,n,s,i,r,a=[],o=[],u=[],l=[];for(t=0;t<7;t++)n=y([2e3,1]).day(t),s=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),r=this.weekdays(n,""),a.push(s),o.push(i),u.push(r),l.push(s),l.push(i),l.push(r);for(a.sort(e),o.sort(e),u.sort(e),l.sort(e),t=0;t<7;t++)o[t]=de(o[t]),u[t]=de(u[t]),l[t]=de(l[t]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Qe(){return this.hours()%12||12}function Xe(e,t){I(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Ke(e,t){return t._meridiemParse}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Qe),I("k",["kk",2],0,function(){return this.hours()||24}),I("hmm",0,0,function(){return""+Qe.apply(this)+U(this.minutes(),2)}),I("hmmss",0,0,function(){return""+Qe.apply(this)+U(this.minutes(),2)+U(this.seconds(),2)}),I("Hmm",0,0,function(){return""+this.hours()+U(this.minutes(),2)}),I("Hmmss",0,0,function(){return""+this.hours()+U(this.minutes(),2)+U(this.seconds(),2)}),Xe("a",!0),Xe("A",!1),H("hour","h"),L("hour",13),ue("a",Ke),ue("A",Ke),ue("H",B),ue("h",B),ue("k",B),ue("HH",B,z),ue("hh",B,z),ue("kk",B,z),ue("hmm",Q),ue("hmmss",X),ue("Hmm",Q),ue("Hmmss",X),ce(["H","HH"],ge),ce(["k","kk"],function(e,t,n){var s=k(e);t[ge]=24===s?0:s}),ce(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),ce(["h","hh"],function(e,t,n){t[ge]=k(e),g(n).bigHour=!0}),ce("hmm",function(e,t,n){var s=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s)),g(n).bigHour=!0}),ce("hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s,2)),t[ve]=k(e.substr(i)),g(n).bigHour=!0}),ce("Hmm",function(e,t,n){var s=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s))}),ce("Hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s,2)),t[ve]=k(e.substr(i))});var et,tt=Te("Hours",!0),nt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:He,monthsShort:Re,week:{dow:0,doy:6},weekdays:je,weekdaysMin:ze,weekdaysShort:Ze,meridiemParse:/[ap]\.?m?\.?/i},st={},it={};function rt(e){return e?e.toLowerCase().replace("_","-"):e}function at(e){var t=null;if(!st[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=et._abbr,require("./locale/"+e),ot(t)}catch(e){}return st[e]}function ot(e,t){var n;return e&&((n=l(t)?lt(e):ut(e,t))?et=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),et._abbr}function ut(e,t){if(null===t)return delete st[e],null;var n,s=nt;if(t.abbr=e,null!=st[e])T("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=st[e]._config;else if(null!=t.parentLocale)if(null!=st[t.parentLocale])s=st[t.parentLocale]._config;else{if(null==(n=at(t.parentLocale)))return it[t.parentLocale]||(it[t.parentLocale]=[]),it[t.parentLocale].push({name:e,config:t}),null;s=n._config}return st[e]=new P(b(s,t)),it[e]&&it[e].forEach(function(e){ut(e.name,e.config)}),ot(e),st[e]}function lt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return et;if(!o(e)){if(t=at(e))return t;e=[e]}return function(e){for(var t,n,s,i,r=0;r=t&&a(i,n,!0)>=t-1)break;t--}r++}return et}(e)}function dt(e){var t,n=e._a;return n&&-2===g(e).overflow&&(t=n[_e]<0||11Pe(n[me],n[_e])?ye:n[ge]<0||24Ae(n,r,a)?g(e)._overflowWeeks=!0:null!=u?g(e)._overflowWeekday=!0:(o=Ee(n,s,i,r,a),e._a[me]=o.year,e._dayOfYear=o.dayOfYear)}(e),null!=e._dayOfYear&&(r=ht(e._a[me],s[me]),(e._dayOfYear>De(r)||0===e._dayOfYear)&&(g(e)._overflowDayOfYear=!0),n=Ge(r,0,e._dayOfYear),e._a[_e]=n.getUTCMonth(),e._a[ye]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=a[t]=s[t];for(;t<7;t++)e._a[t]=a[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ge]&&0===e._a[pe]&&0===e._a[ve]&&0===e._a[we]&&(e._nextDay=!0,e._a[ge]=0),e._d=(e._useUTC?Ge:function(e,t,n,s,i,r,a){var o=new Date(e,t,n,s,i,r,a);return e<100&&0<=e&&isFinite(o.getFullYear())&&o.setFullYear(e),o}).apply(null,a),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ge]=24),e._w&&void 0!==e._w.d&&e._w.d!==i&&(g(e).weekdayMismatch=!0)}}var ft=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,mt=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,_t=/Z|[+-]\d\d(?::?\d\d)?/,yt=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],gt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],pt=/^\/?Date\((\-?\d+)/i;function vt(e){var t,n,s,i,r,a,o=e._i,u=ft.exec(o)||mt.exec(o);if(u){for(g(e).iso=!0,t=0,n=yt.length;tn.valueOf():n.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},ln.isLocal=function(){return!!this.isValid()&&!this._isUTC},ln.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},ln.isUtc=Vt,ln.isUTC=Vt,ln.zoneAbbr=function(){return this._isUTC?"UTC":""},ln.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},ln.dates=n("dates accessor is deprecated. Use date instead.",nn),ln.months=n("months accessor is deprecated. Use month instead",Fe),ln.years=n("years accessor is deprecated. Use year instead",Oe),ln.zone=n("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),ln.isDSTShifted=n("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!l(this._isDSTShifted))return this._isDSTShifted;var e={};if(w(e,this),(e=Yt(e))._a){var t=e._isUTC?y(e._a):Tt(e._a);this._isDSTShifted=this.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 IM6N<$f+(cjz5oCK diff --git a/static/globe/satellite.js b/static/globe/satellite.js deleted file mode 100644 index e294cab..0000000 --- a/static/globe/satellite.js +++ /dev/null @@ -1 +0,0 @@ -!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(o.satellite_js={})}(this,function(o){"use strict";var Ho=Math.PI,Yo=2*Ho,m=Ho/180,t=180/Ho,s=398600.5,Ao=6378.137,Bo=60/Math.sqrt(Ao*Ao*Ao/s),p=1/Bo,Co=.00108262998905,e=-253215306e-14,Uo=-161098761e-14,Do=e/Co,Jo=2/3,a=Object.freeze({pi:Ho,twoPi:Yo,deg2rad:m,rad2deg:t,minutesPerDay:1440,mu:s,earthRadius:Ao,xke:Bo,tumin:p,j2:Co,j3:e,j4:Uo,j3oj2:Do,x2o3:Jo});function l(o,t){for(var s=[31,o%4==0?29:28,31,30,31,30,31,31,30,31,30,31],e=Math.floor(t),a=1,n=0;n+s[a-1]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 iSflD^Z|XZ>Zth<*M&bA%MNYZ^0000)lE diff --git a/static/globe2/globe.html b/static/globe2/globe.html index b5b13d0..0bb0649 100644 --- a/static/globe2/globe.html +++ b/static/globe2/globe.html @@ -1,39 +1 @@ - - - - - - - - - - -
- - - -Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License + Use just https://satnogs-dev.jwgtechs.com \ No newline at end of file diff --git a/static/globe2/moment.min.js b/static/globe2/moment.min.js deleted file mode 100644 index 2a3358f..0000000 --- a/static/globe2/moment.min.js +++ /dev/null @@ -1 +0,0 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";var e,i;function c(){return e.apply(null,arguments)}function o(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function u(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function l(e){return void 0===e}function d(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function h(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function f(e,t){var n,s=[];for(n=0;n>>0,s=0;sDe(e)?(r=e+1,o-De(e)):(r=e,o),{year:r,dayOfYear:a}}function Ie(e,t,n){var s,i,r=Ve(e.year(),t,n),a=Math.floor((e.dayOfYear()-r-1)/7)+1;return a<1?s=a+Ae(i=e.year()-1,t,n):a>Ae(e.year(),t,n)?(s=a-Ae(e.year(),t,n),i=e.year()+1):(i=e.year(),s=a),{week:s,year:i}}function Ae(e,t,n){var s=Ve(e,t,n),i=Ve(e+1,t,n);return(De(e)-s+i)/7}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),H("week","w"),H("isoWeek","W"),L("week",5),L("isoWeek",5),ue("w",B),ue("ww",B,z),ue("W",B),ue("WW",B,z),fe(["w","ww","W","WW"],function(e,t,n,s){t[s.substr(0,1)]=k(e)});I("d",0,"do","day"),I("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),I("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),I("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),H("day","d"),H("weekday","e"),H("isoWeekday","E"),L("day",11),L("weekday",11),L("isoWeekday",11),ue("d",B),ue("e",B),ue("E",B),ue("dd",function(e,t){return t.weekdaysMinRegex(e)}),ue("ddd",function(e,t){return t.weekdaysShortRegex(e)}),ue("dddd",function(e,t){return t.weekdaysRegex(e)}),fe(["dd","ddd","dddd"],function(e,t,n,s){var i=n._locale.weekdaysParse(e,s,n._strict);null!=i?t.d=i:g(n).invalidWeekday=e}),fe(["d","e","E"],function(e,t,n,s){t[s]=k(e)});var je="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var Ze="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var ze="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var $e=ae;var qe=ae;var Je=ae;function Be(){function e(e,t){return t.length-e.length}var t,n,s,i,r,a=[],o=[],u=[],l=[];for(t=0;t<7;t++)n=y([2e3,1]).day(t),s=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),r=this.weekdays(n,""),a.push(s),o.push(i),u.push(r),l.push(s),l.push(i),l.push(r);for(a.sort(e),o.sort(e),u.sort(e),l.sort(e),t=0;t<7;t++)o[t]=de(o[t]),u[t]=de(u[t]),l[t]=de(l[t]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Qe(){return this.hours()%12||12}function Xe(e,t){I(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Ke(e,t){return t._meridiemParse}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Qe),I("k",["kk",2],0,function(){return this.hours()||24}),I("hmm",0,0,function(){return""+Qe.apply(this)+U(this.minutes(),2)}),I("hmmss",0,0,function(){return""+Qe.apply(this)+U(this.minutes(),2)+U(this.seconds(),2)}),I("Hmm",0,0,function(){return""+this.hours()+U(this.minutes(),2)}),I("Hmmss",0,0,function(){return""+this.hours()+U(this.minutes(),2)+U(this.seconds(),2)}),Xe("a",!0),Xe("A",!1),H("hour","h"),L("hour",13),ue("a",Ke),ue("A",Ke),ue("H",B),ue("h",B),ue("k",B),ue("HH",B,z),ue("hh",B,z),ue("kk",B,z),ue("hmm",Q),ue("hmmss",X),ue("Hmm",Q),ue("Hmmss",X),ce(["H","HH"],ge),ce(["k","kk"],function(e,t,n){var s=k(e);t[ge]=24===s?0:s}),ce(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),ce(["h","hh"],function(e,t,n){t[ge]=k(e),g(n).bigHour=!0}),ce("hmm",function(e,t,n){var s=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s)),g(n).bigHour=!0}),ce("hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s,2)),t[ve]=k(e.substr(i)),g(n).bigHour=!0}),ce("Hmm",function(e,t,n){var s=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s))}),ce("Hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s,2)),t[ve]=k(e.substr(i))});var et,tt=Te("Hours",!0),nt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:He,monthsShort:Re,week:{dow:0,doy:6},weekdays:je,weekdaysMin:ze,weekdaysShort:Ze,meridiemParse:/[ap]\.?m?\.?/i},st={},it={};function rt(e){return e?e.toLowerCase().replace("_","-"):e}function at(e){var t=null;if(!st[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=et._abbr,require("./locale/"+e),ot(t)}catch(e){}return st[e]}function ot(e,t){var n;return e&&((n=l(t)?lt(e):ut(e,t))?et=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),et._abbr}function ut(e,t){if(null===t)return delete st[e],null;var n,s=nt;if(t.abbr=e,null!=st[e])T("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=st[e]._config;else if(null!=t.parentLocale)if(null!=st[t.parentLocale])s=st[t.parentLocale]._config;else{if(null==(n=at(t.parentLocale)))return it[t.parentLocale]||(it[t.parentLocale]=[]),it[t.parentLocale].push({name:e,config:t}),null;s=n._config}return st[e]=new P(b(s,t)),it[e]&&it[e].forEach(function(e){ut(e.name,e.config)}),ot(e),st[e]}function lt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return et;if(!o(e)){if(t=at(e))return t;e=[e]}return function(e){for(var t,n,s,i,r=0;r=t&&a(i,n,!0)>=t-1)break;t--}r++}return et}(e)}function dt(e){var t,n=e._a;return n&&-2===g(e).overflow&&(t=n[_e]<0||11Pe(n[me],n[_e])?ye:n[ge]<0||24Ae(n,r,a)?g(e)._overflowWeeks=!0:null!=u?g(e)._overflowWeekday=!0:(o=Ee(n,s,i,r,a),e._a[me]=o.year,e._dayOfYear=o.dayOfYear)}(e),null!=e._dayOfYear&&(r=ht(e._a[me],s[me]),(e._dayOfYear>De(r)||0===e._dayOfYear)&&(g(e)._overflowDayOfYear=!0),n=Ge(r,0,e._dayOfYear),e._a[_e]=n.getUTCMonth(),e._a[ye]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=a[t]=s[t];for(;t<7;t++)e._a[t]=a[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ge]&&0===e._a[pe]&&0===e._a[ve]&&0===e._a[we]&&(e._nextDay=!0,e._a[ge]=0),e._d=(e._useUTC?Ge:function(e,t,n,s,i,r,a){var o=new Date(e,t,n,s,i,r,a);return e<100&&0<=e&&isFinite(o.getFullYear())&&o.setFullYear(e),o}).apply(null,a),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ge]=24),e._w&&void 0!==e._w.d&&e._w.d!==i&&(g(e).weekdayMismatch=!0)}}var ft=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,mt=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,_t=/Z|[+-]\d\d(?::?\d\d)?/,yt=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],gt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],pt=/^\/?Date\((\-?\d+)/i;function vt(e){var t,n,s,i,r,a,o=e._i,u=ft.exec(o)||mt.exec(o);if(u){for(g(e).iso=!0,t=0,n=yt.length;tn.valueOf():n.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},ln.isLocal=function(){return!!this.isValid()&&!this._isUTC},ln.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},ln.isUtc=Vt,ln.isUTC=Vt,ln.zoneAbbr=function(){return this._isUTC?"UTC":""},ln.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},ln.dates=n("dates accessor is deprecated. Use date instead.",nn),ln.months=n("months accessor is deprecated. Use month instead",Fe),ln.years=n("years accessor is deprecated. Use year instead",Oe),ln.zone=n("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),ln.isDSTShifted=n("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!l(this._isDSTShifted))return this._isDSTShifted;var e={};if(w(e,this),(e=Yt(e))._a){var t=e._isUTC?y(e._a):Tt(e._a);this._isDSTShifted=this.isValid()&&00Htk2LX{yQK|2)! zNtKy~9~m5e4c0OssPP95P5i@=D47A^3Bk_4jC;Bo*YkhhwgQVhydRsn4FJWzV`?24;tFN zmm4Glp9H*2Iyn!LnH*290(U3divV9?AWjvB)Q@4sn}L6lO3o*7BS(O1zz0Yr$CLk% zKElQ%<^vsMH*&lTyACrsemMf%99nON2{VCRxRVnFYVeU$TwE+gMMXCKSAmKU`!g(9 ziCbpvA2|mADJdzD^XJdYsZ*z9>eQ*W=dPnx&v9XPD%Z#~#nQ+rEiIJ`7cPj1$jOr@ zWx|9B#%Jfwoh$kI`2zfwF&@AlC72vY=23Iz%#n*1FN%oBv17-iprF7=&XOfdq_eYA zjvP56kw`>jPLU7%lyq|LOMd?dAoJ$UlS`K_iHOM2qerdeR903>S67#ah_tk{ z_`mybxZTPvrU0*yPEHFT^XJc(%a<>Uh{&Nsha@jA&q&VFrAzzCX=-ZHzi(%ZpPB!eAd40) zk}FrPh=|Dk{rj!KeEIU_($mu;A|iYC?8&q$t`4_LxyL?|v81!J(-ccmq^71uu3ft( zi9|wn?b_v%Q~et#3cXi3!alU=(%jr^?d+;mtNO{=v15m8(kZ~V!tPiu&({SKEEbcE8#h|@%FE09 z1AJ?1tGD{Kp-x?fjQfG*sPidX?l2oD_sLrfI#V>A1pzjLs)+)~`t|Gk$=R@BgH^Ah zqQVs5b4CuN-p**U==?x)?287S3Qeacz-Aus5|&PH-MUrc@wmidF==RMu#!_%Rb|Sg zb4m`tYd)h7TXY`Roco$V=T1W>f@(GMP(`tnXSQwICh>S&dV70i_3G7Da{T#_FIn`+ z$wy`8)7>Zt#@~E~4_kCvH3xrW(76d!IrQt5XRzJu*KcTOkVGOO(P&g^Yiq6KtX#RW zf63pyd$)<4BgxNxO%ATw{KjYeMT^dZnv-WOdar7FJ2TiW08V@QGiJD?Y0=_6~#2EvTayzuq!~UcIIh14krsp*20p9EAOA2l!HMsuRqW5LZ;NLM%$NidKFY0u|1rbz%KdQAMP7FeAs4M^L%iIpD2X z_yWLJwZ`tZ=$+N{Ov^pMrwtAs%+jZcs9eS$`-VzR7XyJktNTbbT7%D9^z`$s1W;zs zD*#Rz9Nm|VQ%T$dTx5V8P}`V3L;E&zDj6WhA4;6BK^LHkOa2B-uMSKmHS-qKS-A;s z1Kuz={5aW7H&Ddrg|97!wq42bq$L|C^lbUCMX%9dsKKIJfqCbC26$IC&N=$*mjk3u zE1NvvYV0oU!5C_PrDG!SS55Z~;5JLU%TNiZ?pO?US!%Ycg9hXQPa4`jK=8=%OD|CE zYVc|8;gc4$ns3GK=_m}aCQ5_u&Io=iIMuKZt{di7m(!ovFA9teBZ_4ByPifTIu9`%GcM7Inn~sZ>ri(24*E2)r}v=KHWeOcpvJfzP`sB zEI|N^aC<$=M2;s;Ig)90*lf|goz#oup8Os~U?vo!rqU0Sjt_+(P)V*HA6?1uBx8;= zne^JuH3ses>L|mU^K@WO0c@CpT2bGJISF;aLk3?2xQzNi!JMx6C1X;159ybl{)M?< z59(Jjy|*F2&v4(c<^mDY7ldrc@#G_!41Lb<&^govO%sYxMKY7I7^8O=9+mR!{&oNgu(ol%6 zZtRn@sQs1=w-fw6nV>eDFQAT*>VP?9zfW_;u#n^7O{CV0{PX%f8J?|S;KG!P#84aJ z3k+`eZ$csIn{1mr#UM{Yih=Wn2Co9!9Gw%sJ9CWI1wl%)&g~ z1oevetqyIJpz2C5l9{Yr5(L3H(vZpVa5HKXYcld0D)_n9-l`gifyExZseLE zFy}})BgaENsyJ`^HU5bDdmclGylE`aJm2h002ovPDHLkV1m}K(SZN} diff --git a/static/globe2/satellite-marker-light.png b/static/globe2/satellite-marker-light.png deleted file mode 100644 index af17f1bf8929891e63a2c12839e56ad31bc7db94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2598 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 IM6N<$f+(cjz5oCK diff --git a/static/globe2/satellite.js b/static/globe2/satellite.js deleted file mode 100644 index e294cab..0000000 --- a/static/globe2/satellite.js +++ /dev/null @@ -1 +0,0 @@ -!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(o.satellite_js={})}(this,function(o){"use strict";var Ho=Math.PI,Yo=2*Ho,m=Ho/180,t=180/Ho,s=398600.5,Ao=6378.137,Bo=60/Math.sqrt(Ao*Ao*Ao/s),p=1/Bo,Co=.00108262998905,e=-253215306e-14,Uo=-161098761e-14,Do=e/Co,Jo=2/3,a=Object.freeze({pi:Ho,twoPi:Yo,deg2rad:m,rad2deg:t,minutesPerDay:1440,mu:s,earthRadius:Ao,xke:Bo,tumin:p,j2:Co,j3:e,j4:Uo,j3oj2:Do,x2o3:Jo});function l(o,t){for(var s=[31,o%4==0?29:28,31,30,31,30,31,31,30,31,30,31],e=Math.floor(t),a=1,n=0;n+s[a-1]Ho&&(soPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02p*dSaefwW^{L9 za%BK;VQFr3E^cLXAT%y9E-_;&oJ#-z2Omj9K~#8N?VLSq990yBQ$)NKyQoIP2JPl!!=_RL}wvC8DIGq@i2hXWm#h zXU}+NcV~8IHa^mkEbn{wo->|#_x;TJ)Co>-f)kwJHNe{1+6UX)+uuA&*xlXzac^($ z_k)9jzh1m}@h{|Oe#d9Dp)GxK_xS?GlE-ySzkKcoAhFovA9U& z$mzNPZvW@cpa0`b)k$)YE2nKQHa9n~RJlV^yZ*|`O8@TNyZxItZ}yj$m-|<*UOgl~ z^E*DH4Q*YFNOF=p%V-bMbN?;_rW0KdgP6T`?OK0nX=x+2sq zd-m*aCls!(u8wsv%1A6?x?B(~Xv*?tgY*~tk`n6#rh)PBv2f<|++ zs=^~D>ha^phhu~@(*(&yPNxNpS?+Ye21{ld43M(~5^|ryj6AaWmOA z-6=}6sa`zPy4G@&w>FF^!|28wykuLGAw8Q{G&mD1C!~#ZlR-RXd*dOMz|%UbWzOIP zw3#~3!4uxH&C&7j;luA@K-k8?b{O4YjJIraG_V-c={}Pvm$(bm2_W9aT5#$_j=4dd zi@|9V?K;01YvQM4OBbrpFlv>;W42ojEZbuM*yX#WARg4$NLv*87^U)N6LpbziQYzf zob)kb_sk{fBJmQvReqe@V>FAcgrT-!Lqn7SUCk;Bj%tJL&YIUkK z&gkykJdG~}b)2cR%cm>pE-nFvQI`mnR@{1E*5pqAtca)R5zpCvIdpwAPZg=4Rwg`W z`{mG`y4T^t;5pkb$Nv8QpRv=88#iq5E)!4DBc8MUa-3A95~Py89y@hu8?!2PyA#jZ zemOXQiJj(Y0a;KNl6cPc%b{zfr%#{S;9Vx3qQ^>WrL>MX7dydu8h~}+g?P^PkB3&K zc^YSQe5q8C3g`-(z0!G@&)`A#eMfqSk6TM;z->N`tx7$%#bf2is6eXiKgS^RP@S|I z;W68-jud3zXtwLeC+Y`}+3sl2byJr&t#os$()y?jJ3Bl360DPhup4yomTis>-X)2_ zU>ENiy<6bK@5%Ify&qygu6&oq8no)&f~Rb6e7M8?E=~A!LWh^J4)Yy!tbtv)Yg{Fo zXlzlq311iP8h5vhJfRx~-KT+V-YC}%Z&+#HWmIsbsr@lgn`gs1%SC(bcT0h^;QBTu zgKbzV&kwigII z;`Qs--_~!jj9bE8X(l!~G;d-nprRt*NVooH(F`1?guBvAY;s6WetPxAYAySY^rJru@VrW)VN^9tf0dw}T;P~kg+Ud6q2Q%Ump;}lief$G))c7V)VP{gbw$nUNBx!}Hqsz50gTC2TokUxE*4A+ zz~9^jfqWL*CTg6RL-R*%s#|?U&la%()BrJfOst}!U^NqsUR+pM_(a!Jkl*o{wolY} zF_-Fy8l!ggrM?HC4PxgQ7{;VgOcV;E2{n1h#l^+X