{"id":1026,"date":"2025-02-21T00:01:01","date_gmt":"2025-02-20T23:01:01","guid":{"rendered":"https:\/\/www.mh370-caption.net\/?page_id=1026"},"modified":"2026-02-03T15:18:09","modified_gmt":"2026-02-03T14:18:09","slug":"armada-2","status":"publish","type":"page","link":"https:\/\/www.mh370-caption.net\/index.php\/armada-2\/","title":{"rendered":"Armada-2-test"},"content":{"rendered":"\n<p> zone by CAPTION centered on 35.7\u00b0S and 93\u00b0E (yellow triangle). <\/p>\n\n\n\n<p>The map below shows the track of OI &#8220;Armada 78-06&#8221; ship. Her position is updated at 30 minutes past the hour with 90 minutes behind real time at time of update. <\/p>\n\n\n\n<p>Using the display control buttons at the top left, you can zoom in, zoom out and display in full screen.<\/p>\n\n\n\n<p>The orange line illustrates the zone scanned during Phase 2 marine surveys conducted by the Governments of Australia, Malaysia and the People\u2019s Republic of China between September 2014 to January 2017. The red line illustrates Ocean Infinity&#8217;s search in 2018.<\/p>\n\n\n\n<script>\nvar stopPoints=true;\ndir=\"https:\/\/trise5631.github.io\/\";\n\/\/&\n<\/script>\n<link crossorigin=\"\" href=\"https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.css\" rel=\"stylesheet\">\n<script src=\"https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.js\" crossorigin=\"\"><\/script>\n<script src='https:\/\/api.mapbox.com\/mapbox.js\/plugins\/leaflet-fullscreen\/v1.0.1\/Leaflet.fullscreen.min.js'><\/script>\n<link href='https:\/\/api.mapbox.com\/mapbox.js\/plugins\/leaflet-fullscreen\/v1.0.1\/leaflet.fullscreen.css' rel='stylesheet' \/>\n<style>\n    .entry-content{width:100% !important}\n\t.entry-content a{ box-shadow: none !important}\n\t.leaflet-container label{display:inline !important;font-weight:400 !important}\n    #map {\n        height: 100vh;\n        width: 100%\n    }\n\t#unfold {\n\t\twidth: 100%;\n\t\tborder: none;\n\t\tcursor: pointer;\n\t\tfont-weight: bold;\n\t}\n\t#options.is-open {\n\t\tgrid-template-rows: 1fr; \n\t}\n\n\t#options {\n\t\tdisplay: grid;\n\t\tgrid-template-rows: 0fr;\n\t\ttransition: grid-template-rows 0.4s ease-out;\n\t}\n\t#options>div {\noverflow: hidden;\n    padding: 0 1rem;\n\t}\n    #latlng {\n        font-weight: 700;\n        opacity: 70%;\n        cursor: pointer;\n        color: #fff\n    }\n    #link {\n        text-decoration: none;\n        font-size: calc( 3vw + 10px ); \n        font-weight: 700;\n        opacity: 40%;\n        cursor: pointer;\n        color: #fff;\n        font-family: Verdana, sans-serif\n    }\n\n.phaseControl {\n  background: #fff;\n  padding: 5px;\n}\n<\/style>\n<div id=\"map\"><\/div>\n<script>\n\t\/\/&\n\trnd=Math.round\n\tvar phases={}\n\tvar phasesNames=[]\n\tvar dates=[]\n    var map = L.map(\"map\", {\n        fullscreenControl: !0,\n        fullscreenControlOptions: {\n            position: \"topleft\"\n        }\n    }).setView([-30, 90], 4);\n\tfunction changeCB(event) {\n\n\t\tphasen=event.currentTarget.id.substr(2)\n\t\tadd=event.currentTarget.checked\n\t\tconsole.log(phasen,add,phases[phasen][1])\n\t\t<!-- console.log(phases[phasen]) -->\n\t\tif (!phases[phasen][4]){\n\t\t\tphases[phasen][4]=1\n\t\t\tvar scriptEl = document.createElement('script');\n\t\t\tscriptEl.src =  dir+phases[phasen][1];\n\t\t\tscriptEl.type = \"text\/javascript\";\n\t\t\tdocument.body.appendChild(scriptEl);\n\t\t}\n\t\t\n\t\tif (add){\n\t\t\tfor (i in phases[phasen][5]){\n\t\t\t\tmap.addLayer(phases[phasen][5][i]);\n\t\t\t}\n\t\t}\n\t\telse{\n\t\t\tfor (i in phases[phasen][5]){\n\t\t\t\tmap.removeLayer(phases[phasen][5][i]);\n\t\t\t}\n\t\t}\n\t}\n    function parse(t,phasen1=\"curr\") { \n\t\tif (typeof phasen1 !== 'string'){\n\t\t\tphasen1=phasesNames[phasen1]\n\t\t}\n\t\thtml=t.txt\n\t\tif (html){\n\t\t\thtml+=\"<br>\"\n\t\t}\n\t\thtml+='<div id=\"unfold\">&darr; Options :<\/div>'\n\t\thtml+='<div id=\"options\">'\n\t\thtml+='<div>'\n\t\thtml+='<form><input type=\"radio\" id=\"GEBCO\" name=\"bg\" value=\"0\" checked \/>'\n\t\t\t+'<label for=\"GEBCO\">GEBCO<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"GEBCO2\" name=\"bg\" value=\"1\"\/>'\n\t\t\t+'<label for=\"GEBCO2\">GEBCO flat<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"GEBCO3\" name=\"bg\" value=\"2\"\/>'\n\t\t\t+'<label for=\"GEBCO3\">GEBCO sonar coverage<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"OSM\" name=\"bg\" value=\"3\"\/>'\n\t\t\t+'<label for=\"OSM\">OpenStreetMap<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"IR\" name=\"bg\" value=\"4\"\/>'\n\t\t\t+'<label for=\"IR\">Last IR GEO weather<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"VIS\" name=\"bg\" value=\"5\"\/>'\n\t\t\t+'<label for=\"VIS\">Last VIS GEO weather<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"ATSB\" name=\"bg\" value=\"6\"\/>'\n\t\t\t+'<label for=\"ATSB\">ATSB Bathymetry<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"ATSB2\" name=\"bg\" value=\"7\"\/>'\n\t\t\t+'<label for=\"ATSB2\">ATSB Deep Tow Side Scan<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"ATSB3\" name=\"bg\" value=\"8\"\/>'\n\t\t\t+'<label for=\"ATSB3\">ATSB AUV Side Scan<\/label>'\n\t\thtml+='<br><input type=\"radio\" id=\"ATSB4\" name=\"bg\" value=\"9\"\/>'\n\t\t\t+'<label for=\"ATSB4\">ATSB DHJ Side Scan<\/label>'\n\t\thtml+='<br><input type=\"radio\" name=\"bg\" value=\"10\" id=\"GEBCOO1\"\/>'\n\t\t\t+'<label for=\"GEBCOO1\">GEBCO overlay 1<\/label>'\n\t\thtml+='<br><input type=\"radio\" name=\"bg\" value=\"11\" id=\"GEBCOO2\"\/>'\n\t\t\t+'<label for=\"GEBCOO2\">GEBCO overlay 2<\/label><\/form>'\n\t\tiphase=0\n\t\tif (!(phases.length || !(\"phases\" in t) || !t.phases )){\n\t\t\tiphase=1\n\t\t\tphases[\"curr\"]=[\"Current Phase\",\"curr.js\",1,\"\",1,[]]\n\t\t\tphasesNames.push(\"curr\")\n\t\t\tfor (i in t.phases){\n\t\t\t\tphases[t.phases[i][1].replace('.js','')]=t.phases[i].concat([0,[]])\n\t\t\t\tphasesNames.push(t.phases[i][1].replace('.js',''))\n\t\t\t}\n\t\t\t\n\t\t\tL.Control.MyControl = L.Control.extend({\n\t\t\t  onAdd: function(map) {\n\t\t\t\tvar el = L.DomUtil.create('div', 'leaflet-bar phaseControl');\n\n\t\t\t\tfor (phasen in phases){\n\t\t\t\t\tphase=phases[phasen]\n\t\t\t\t\tif (!(!phase[2] || phasen1==\"curr\")){\n\t\t\t\t\t\t\n\t\t\t\t\t\tphase[4]=1\n\t\t\t\t\t\tvar scriptEl = document.createElement('script');\n\t\t\t\t\t\tscriptEl.src =  dir+phase[1];\n\t\t\t\t\t\tscriptEl.type = \"text\/javascript\";\n\t\t\t\t\t\tdocument.body.appendChild(scriptEl);\n\t\t\t\t\t}\n\t\t\t\t\tif (phase[0]==\"\"){\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\t\t\t\t\tif (html && phasen){\n\t\t\t\t\t\thtml+=\"<br>\"\n\t\t\t\t\t}\n\t\t\t\t\ttxt=phase[0]\n\t\t\t\t\tif (phase[3]!=\"\") {\n\t\t\t\t\t\ttxt=\"<abbr title='\"+phase[3]+\"'>\"+txt+\"<\/abbr>\"\n\t\t\t\t\t}\n\t\t\t\t\thtml+=\"<label for='cb\"+phasen+\"'><input type='checkbox' id='cb\"+phasen+\"' name='accept' value='yes'\"+((phase[2]||phase[1]==\"\")?\" checked\":\"\")+\">\"+txt+\"<\/label>\"\n\t\t\t\t}\n\t\t\t\thtml+='<\/div\">'\n\t\t\t\thtml+='<\/div\">'\n\t\t\t\tel.innerHTML = html;\n\t\t\t\tL.DomEvent.disableClickPropagation(el);\n\t\t\t\treturn el; \n\t\t\t  },\n\n\t\t\t  onRemove: function(map) {\n\t\t\t  }\n\t\t\t});\n\t\t\tL.control.myControl = function(opts) {\n\t\t\t  return new L.Control.MyControl(opts);\n\t\t\t}\n\t\t\tL.control.myControl({\n\t\t\t  position: 'topright'\n\t\t\t}).addTo(map);\n\n\t\t\tfor (phasen in phases){\n\t\t\t\t\n\t\t\t\t<!-- if ((phases[0][0]!=\"\") || (phasen>0)){ -->\n\t\t\t\tdocument.getElementById(\"cb\"+phasen).addEventListener('change', (event) => {changeCB(event)})\n\t\t\t\t<!-- } -->\n\t\t\t}\n\t\t\tdocument.querySelector(\"form\").addEventListener(\n\t\t\t  \"change\",\n\t\t\t  function (event) {\n\t\t\t\tchangeBG(event.target.value)\n\t\t\t\t\n\t\t\t\t<!-- GEBCOo -->\n\t\t\t  },\n\t\t\t  false,\n\t\t\t);\n\t\t}\n\t\tconst header = document.querySelector('#unfold');\n\t\tconst wrapper = document.querySelector('#options');\n\n\t\theader.addEventListener('click', () => {\n\t\t\twrapper.classList.toggle('is-open');\n\t\t});\n\t\tvar o2 = {\n\t\t\tradius: 8,\n\t\t\tfillColor: \"#0f0\",\n\t\t\tstroke: !1,\n\t\t\tfill: !0,\n\t\t\tfillOpacity: .25,\n\t\t\tzIndexOffset:5\n\t\t};\n\t\tif (t.currTime==\"\"){\n\t\t\tt.currTime={}\n\t\t\t}\n        for (vess in data2 = t.data, data2) {\n\t\t\tdata3=data2[vess]\n\t\t\tvar o = {\n\t\t\t\tradius: 3,\n\t\t\t\tfillColor: t.colors[vess],\n\t\t\t\tstroke: !1,\n\t\t\t\tfill: !0,\n\t\t\t\tfillOpacity: .7,\n\t\t\t\tclickable:!1,\n\t\t\t\tzIndexOffset:-2\n\t\t\t};\n\t\t\tpts = [] \n\t\t\tfor (let a = 0; a < data3.length; a++){\n\t\t\t\tlat = data3[a][1], lon = data3[a][2]\n\t\t\t\tpts.push([lat, lon])\n\t\t\t\tif (!stopPoints || (data3[a][5]) || data3[a].length<6){\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tpt = L.circleMarker([lat, lon], o2)\n\t\t\t\tphases[phasen1][5].push(pt)\n\t\t\t\tpt.addTo(map)\n\t\t\t\t\n\t\t\t}\n\t\t\tpl=new L.Polyline(pts, {\n\t\t\t\tcolor: t.colors[vess],\n\t\t\t\tweight: 1\n\t\t\t})\n\t\t\tphases[phasen1][5].push(pl)\n\t\t\tpl.addTo(map)\n\t\t\tfor (let a = 0; a < data3.length; a++){\n\n\t\t\t\tlat = data3[a][1], lon = data3[a][2]\n\t\t\t\ttxt=vess+\"<br>\"+data3[a][0]+\"<br>\"+rnd(1e3*lat)\/1e3+\", \"+rnd(1e3*lon)\/1e3\n\t\t\t\tif (data3[a].length>4){\n\t\t\t\t\ttxt+=\"<br>\"+data3[a][4]+\"kts, \"+((data3[a][3])?(data3[a][3]+\"\u00b0\"):\"\")\n\t\t\t\t}\n\t\t\t\tif (data3[a].length>6){\n\t\t\t\t\ttxt+=\"<br>Delay: \"+(rnd(data3[a][6]*60*10)\/10)+\"min, src:\"+(data3[a][7])\n\t\t\t\t}\n\t\t\t\tpt = L.circleMarker([lat, lon], o).bindPopup(txt)\n\t\t\t\tphases[phasen1][5].push(pt)\n\t\t\t\tpt.addTo(map)\n\t\t\t\tif (!(!(vess in t.currTime) ||  t.currTime[vess]!=data3[a][0])){\n\t\t\t\t\tphases[phasen1][5].push(L.circleMarker([lat, lon], {radius: 6,color:\"#f00\"}).bindPopup(txt).addTo(map))\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t<!-- console.log(t.currTime) -->\n\t\t\tif (!(vess!=t.label || !(vess in t.currTime))){ \n\t\t\t\tphases[phasen1][5][phases[phasen1][5].length-1].openPopup()\n\t\t\t}\n\t\t\t\n\t\t}\n    }\n\/\/&\n\tcurrBG=0\n\ttexts=[]\n    function parseAreas(t) {\n        for (key in t.areas) {\n            data1 = t.areas[key];\n\t\t\tpts = [];\n\t\t\tname=data1[0];\n\t\t\tcolorv=data1[1];\n\t\t\tdataLines=data1[2];\n            for (let k = 0; k < dataLines.length; k++) pts.push([dataLines[k][1], dataLines[k][0]]);\n\t\t\tif (pts.length==1){\n\t\t\t\ttmp=new L.circleMarker(pts[0],{\n\t\t\t\t\tradius: 6, \n\t\t\t\t\tfillColor: colorv,\n\t\t\t\t\tstroke: !1,\n\t\t\t\t\tfill: !0,\n\t\t\t\t\tfillOpacity: .7,\n\t\t\t\t}).addTo(map)\n\t\t\t}\n\t\t\telse{\n\t\t\t\ttmp=new L.Polyline(pts, {\n\t\t\t\t\tcolor: colorv,\n\t\t\t\t\tweight: 2, \n\t\t\t\t\topacity:0.7\n\t\t\t\t}).addTo(map)\n\t\t\t}\n\t\t\tif (name!=\"\"){\n\t\t\t\t\ttmp.bindPopup(name)\n\t\t\t}\n\t\t\tif (data1.length>3){\n\t\t\t\ttmp=L.marker([data1[5], data1[4]], {\n\t\t\t\ticon: L.divIcon({\n\t\t\t\t\tclassName: '', \n\t\t\t\t\thtml: '<span style=\"color: '+colorv+'; font-size: '+data1[6]+'px; font-weight: bold; opacity: 0.7; position: relative; left: -50%; top: -50%; white-space: nowrap;\">'+data1[3]+'<\/span>',\n\t\t\t\t\t iconSize: null, \n\t\t\t\t\ticonAnchor: [0, 0]\n\t\t\t    }),\n\t\t\t\t  <!-- interactive: false -->\n\t\t\t\t})\n\t\t\t\ttexts.push(tmp.addTo(map))\n\t\t\t\tif (name!=\"\"){\n\t\t\t\t\ttmp.bindPopup(name)\n\t\t\t\t}\n\t\t\t}\n        }\n\t\tupdateLabelVisibility();\n    }\n\tfunction roundZeros(val){\n\t\ttxt=(rnd(1e3 * val) \/ 1e3)+\"\"\n\t\t\n\t\tif (txt.indexOf('.') <0) return txt+\".000\"\n\t\tndec=txt.split('.')[1].length\n\t\tfor (let t = 0; t < 3-ndec; t++) {\n\t\t\ttxt+=\"0\"\n\t\t}\n\t\treturn txt\n\t}\n    L.Control.ScaleNautic = L.Control.Scale.extend({\n\toptions: {\n\t\tnautic: false\n\t},\n\n\t_addScales: function(options, className, container) {\n\t\tL.Control.Scale.prototype._addScales.call(this, options, className, container);\n\t\tL.setOptions(options);\n\t\tif (this.options.nautic) {\n\t\t\tthis._nScale = L.DomUtil.create('div', className, container);\n\t\t}\n\t},\n\n\t_updateScales: function (maxMeters) {\n\t\tL.Control.Scale.prototype._updateScales.call(this, maxMeters);\n\t\tif (this.options.nautic) {\n\t\t\tif (maxMeters){\n\t\t\t\tthis._updateNautic(maxMeters)\n\t\t\t}\n\t\t}\n\t},\n\n\t_updateNautic: function (maxMeters) {\n\t\tvar scale = this._nScale,\n\t\t\tmaxNauticalMiles = maxMeters \/ 1852, nauticalMiles;\n\n\t\tnauticalMiles = this._getRoundNum(maxNauticalMiles);\n\n\t\tscale.style.width = Math.round(this.options.maxWidth * (nauticalMiles \/ maxNauticalMiles)) - 10 + 'px';\n\t\tscale.innerHTML = nauticalMiles + ' nm';\n\t},\n\t\n\t_getRoundNum: function (num) {\n        var pow10, d;\n\t\tif (num >= 1) {\n\t\t\tpow10 = Math.pow(10, (Math.floor(num) + '').length - 1);\n\t\t\td = num \/ pow10;\n\t\t}\n\t\telse {\n            pow10 = 1;\n            d = num;\n\t\t\twhile (d < 1) {\n\t\t\t\td *= 10;\n\t\t\t\tpow10 *= 10;\n\t\t\t}\n\t\t} \n\t\t\n\t\td = d >= 10 ? 10 :\n\t\t    d >= 5 ? 5 :\n\t\t    d >= 3 ? 3 :\n\t\t\td >= 2 ? 2 : 1;\n\t\t\n\t\treturn num >= 1 ? pow10 * d : d \/ pow10;\n\t}\n});\nconst minZoomToShow = 6;\nconst maxZoomToShow = 11;\n\ncurrBG=0\nfunction changeBG(value){\n\tif (value==currBG){\n\t\treturn\n\t}\n\tvalue=parseInt(value,10)\n\tmap.removeLayer(tiles[currBG])\n\ttiles[value].addTo(map)\n\tcurrBG=value\n}\nfunction updateLabelVisibility() {\n  const zoom = map.getZoom();\n\n  if (!(zoom < minZoomToShow || zoom > maxZoomToShow)) {\n\tfor (i in texts){\n    if (!map.hasLayer(texts[i])) map.addLayer(texts[i]);\n\t\n\t}\n  } else {\n  for (i in texts){\n    if (map.hasLayer(texts[i])) map.removeLayer(texts[i]);\n\t\t}\n  }\n}\nL.control.scalenautic = function (options) {\n\treturn new L.Control.ScaleNautic(options);\n};\ntiles=[]\n map.addControl(new L.Control.ScaleNautic({\n        metric: !0,\n        imperial: !1,\n        nautic: !0\n    }))\n\n\ntiles.push(L.tileLayer.wms(\"https:\/\/wms.gebco.net\/mapserv?\", {\n\tlayers: \"gebco_latest\",\n\tmaxZoom: 15,\n\tattribution: \"GEBCO Compilation Group (2024)\"\n}))\ntiles.push(L.tileLayer.wms(\"https:\/\/wms.gebco.net\/mapserv?\", {\n\tlayers: \"gebco_latest_2\",\n\tmaxZoom: 15,\n\tattribution: \"GEBCO Compilation Group (2024)\"\n}))\ntiles.push(L.tileLayer.wms(\"https:\/\/wms.gebco.net\/mapserv?\", {\n\tlayers: \"gebco_latest_3\",\n\tformat: 'image\/png; mode=8bit' , \n\tmaxZoom: 15,\n\tattribution: \"GEBCO Compilation Group (2024)\"\n}))\ntiles.push(L.tileLayer.wms(\"https:\/\/ows.terrestris.de\/osm\/service?\", {\n\tlayers: \"OSM-WMS-no-labels\",\n\tmaxZoom: 14,\n}))\ntiles.push(L.tileLayer.wms(\"https:\/\/nowcoast.noaa.gov\/geoserver\/satellite\/ows?\", {\n\tlayers: \"global_longwave_imagery_mosaic\",\n\tformat: 'image\/vnd.jpeg-png8' , \n\tversion:\"1.3.0\",\n\tmaxZoom: 15,\n\tattribution: \"NOAA\/NASA\/NESDIS\"\n}))\ntiles.push(L.tileLayer.wms(\"https:\/\/nowcoast.noaa.gov\/geoserver\/satellite\/ows?\", {\n\tlayers: \"mnf:global_visible_imagery_mosaic\",\n\tformat: 'image\/vnd.jpeg-png8' , \n\tversion:\"1.3.0\",\n\tmaxZoom: 15,\n\tattribution: \"NOAA\/NASA\/NESDIS\"\n}))\ntiles.push(L.tileLayer.wms(\"https:\/\/warehouse.ausseabed.gov.au\/geoserver\/ows?\", {\n\tservice: \"WMS\",\n\tlayers: \"Southern_Indian_Ocean__MH370__Bathymetry__150m_2017\",\n\tmaxZoom: 15,\n\tattribution: \"ATSB\/Geoscience Australia\"\n}))\n \n\ntiles.push(L.tileLayer.wms(\"https:\/\/warehouse.ausseabed.gov.au\/geoserver\/ows?\", {\n\tlayers: \"MH370_Phase_2_Sonar_Imagery_Backscatter_Inverse_Deep_Tow__SSS__5m_2018\",\n\tservice: \"WMS\",\n\tmaxZoom: 18,\n\tattribution: \"ATSB\/Geoscience Australia\"\n}))\ntiles.push(L.tileLayer.wms(\"https:\/\/warehouse.ausseabed.gov.au\/geoserver\/ows?\", {\n\tlayers: \"MH370_Phase_2_Sonar_Imagery_Backscatter_Inverse_Autonomous_Underwater_Vehicle__SSS__5m_2018\",\n\tservice: \"WMS\",\n\tmaxZoom: 18,\n\tattribution: \"ATSB\/Geoscience Australia\"\n}))\n\ntiles.push(L.tileLayer.wms(\"https:\/\/warehouse.ausseabed.gov.au\/geoserver\/ows?\", {\n\tservice: \"WMS\",\n\tlayers: \"MH370_Phase_2_Sonar_Imagery_Backscatter_Wide_DHJ__SAS__5m_2018\",\n\tmaxZoom: 18,\n\tattribution: \"ATSB\/Geoscience Australia\"\n}))\nshift=+0.02\nGEBCOo1=L.imageOverlay(dir+'GEBCO1.jpg', [[-37+shift,91], [ -33+shift,97]])\nGEBCOo2=L.imageOverlay(dir+'GEBCO2.jpg', [[-37+shift,91], [ -33+shift,97]])\ntiles.push(GEBCOo1)\ntiles.push(GEBCOo2)\n\n\n\n\ntiles[0].addTo(map)\noverl=L.tileLayer.wms('https:\/\/ows.terrestris.de\/osm\/service?', {\n\tlayers: 'OSM-Overlay-WMS',\n\tzIndex:2,\n\tmaxZoom: 14,\n\ttransparent: true,\n\tformat: 'image\/png' , \n\tattribution: \"<a href='http:\/\/www.openstreetmap.org\/copyright'>\u00a9 OpenStreetMap Contributors<\/a>\"\n}).addTo(map),\nL.Control.Watermark = L.Control.extend({\n\tonAdd: function(t) {\n\t\tvar o = L.DomUtil.create(\"a\");\n\t\treturn o.id = \"link\", o.class = \"\", o.innerHTML = \"MH370-CAPTION.net\", o.href = \"https:\/\/www.mh370-caption.net\/\", o.target = \"_blank\", o\n\t},\n\tonRemove: function(t) {}\n}), L.control.watermark = function(t) {\n\treturn new L.Control.Watermark(t)\n}, L.control.watermark({\n\tposition: \"bottomright\"\n}).addTo(map), L.Control.Latlng = L.Control.extend({\n\tonAdd: function(t) {\n\t\tvar o = L.DomUtil.create(\"div\");\n\t\treturn o.id = \"latlng\", o.innerHTML = \"\", o\n\t},\n\tonRemove: function(t) {}\n}), L.control.latlng = function(t) {\n\treturn new L.Control.Latlng(t)\n}, latlng = L.control.latlng({\n\tposition: \"topright\"\n}), latlng.addTo(map), map.on(\"mousemove\", (function(t) {\n\tlatlng._container.innerHTML = roundZeros( t.latlng.lat) + \", \" +  roundZeros(t.latlng.lng)\n}))\n\nmap.on('zoomend', updateLabelVisibility);\n\n<\/script>\n<script src=\"https:\/\/trise5631.github.io\/areas3.js\"><\/script>\n<script src=\"https:\/\/trise5631.github.io\/tracking.js\"><\/script>\n\n\n\n<p><\/p>\n\n\n<div>You need to add a widget, row, or prebuilt layout before you&#8217;ll see anything here. \ud83d\ude42<\/div>","protected":false},"excerpt":{"rendered":"<p>zone by CAPTION centered on 35.7\u00b0S and 93\u00b0E (yellow triangle). The map below shows the track of OI &#8220;Armada 78-06&#8221; ship. Her position is updated at 30 minutes past the hour with 90 minutes behind real time at time of update. Using the display control buttons at the top left, you can zoom in, zoom &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.mh370-caption.net\/index.php\/armada-2\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Armada-2-test&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"_links":{"self":[{"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/pages\/1026"}],"collection":[{"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/comments?post=1026"}],"version-history":[{"count":24,"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/pages\/1026\/revisions"}],"predecessor-version":[{"id":1485,"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/pages\/1026\/revisions\/1485"}],"wp:attachment":[{"href":"https:\/\/www.mh370-caption.net\/index.php\/wp-json\/wp\/v2\/media?parent=1026"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}