@canboat/canboatjs 1.21.1 → 1.22.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/lib/candevice.js +2 -2
- package/lib/codes.test.js +2 -0
- package/lib/codesMfgs.json +1 -0
- package/lib/fromPgn.js +87 -41
- package/lib/simpleCan.js +2 -2
- package/lib/stringMsg.js +16 -7
- package/lib/stringMsg.test.js +2 -1
- package/lib/ydgw02.js +1 -1
- package/package.json +1 -1
- package/ios_canboat.js +0 -26
package/ios_canboat.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
!function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=15)}([function(e,t,n){"use strict";(function(e){
|
|
2
|
-
/*!
|
|
3
|
-
* The buffer module from node.js, for the browser.
|
|
4
|
-
*
|
|
5
|
-
* @author Feross Aboukhadijeh <http://feross.org>
|
|
6
|
-
* @license MIT
|
|
7
|
-
*/
|
|
8
|
-
var r=n(16),i=n(17),a=n(18);function s(){return d.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function o(e,t){if(s()<t)throw new RangeError("Invalid typed array length");return d.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=d.prototype:(null===e&&(e=new d(t)),e.length=t),e}function d(e,t,n){if(!(d.TYPED_ARRAY_SUPPORT||this instanceof d))return new d(e,t,n);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return f(this,e)}return u(this,e,t,n)}function u(e,t,n,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,n,r){if(t.byteLength,n<0||t.byteLength<n)throw new RangeError("'offset' is out of bounds");if(t.byteLength<n+(r||0))throw new RangeError("'length' is out of bounds");t=void 0===n&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,n):new Uint8Array(t,n,r);d.TYPED_ARRAY_SUPPORT?(e=t).__proto__=d.prototype:e=g(e,t);return e}(e,t,n,r):"string"==typeof t?function(e,t,n){"string"==typeof n&&""!==n||(n="utf8");if(!d.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var r=0|m(t,n),i=(e=o(e,r)).write(t,n);i!==r&&(e=e.slice(0,i));return e}(e,t,n):function(e,t){if(d.isBuffer(t)){var n=0|c(t.length);return 0===(e=o(e,n)).length||t.copy(e,0,0,n),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(r=t.length)!=r?o(e,0):g(e,t);if("Buffer"===t.type&&a(t.data))return g(e,t.data)}var r;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function l(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function f(e,t){if(l(t),e=o(e,t<0?0:0|c(t)),!d.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function g(e,t){var n=t.length<0?0:0|c(t.length);e=o(e,n);for(var r=0;r<n;r+=1)e[r]=255&t[r];return e}function c(e){if(e>=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|e}function m(e,t){if(d.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return V(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return G(e).length;default:if(r)return V(e).length;t=(""+t).toLowerCase(),r=!0}}function p(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return R(this,t,n);case"utf8":case"utf-8":return D(this,t,n);case"ascii":return b(this,t,n);case"latin1":case"binary":return C(this,t,n);case"base64":return T(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return w(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function B(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function h(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=d.from(t,r)),d.isBuffer(t))return 0===t.length?-1:S(e,t,n,r,i);if("number"==typeof t)return t&=255,d.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):S(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function S(e,t,n,r,i){var a,s=1,o=e.length,d=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,o/=2,d/=2,n/=2}function u(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var l=-1;for(a=n;a<o;a++)if(u(e,a)===u(t,-1===l?0:a-l)){if(-1===l&&(l=a),a-l+1===d)return l*s}else-1!==l&&(a-=a-l),l=-1}else for(n+d>o&&(n=o-d),a=n;a>=0;a--){for(var f=!0,g=0;g<d;g++)if(u(e,a+g)!==u(t,g)){f=!1;break}if(f)return a}return-1}function v(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r))>i&&(r=i):r=i;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var s=0;s<r;++s){var o=parseInt(t.substr(2*s,2),16);if(isNaN(o))return s;e[n+s]=o}return s}function O(e,t,n,r){return W(V(t,e.length-n),e,n,r)}function y(e,t,n,r){return W(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function I(e,t,n,r){return y(e,t,n,r)}function L(e,t,n,r){return W(G(t),e,n,r)}function N(e,t,n,r){return W(function(e,t){for(var n,r,i,a=[],s=0;s<e.length&&!((t-=2)<0);++s)n=e.charCodeAt(s),r=n>>8,i=n%256,a.push(i),a.push(r);return a}(t,e.length-n),e,n,r)}function T(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function D(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var a,s,o,d,u=e[i],l=null,f=u>239?4:u>223?3:u>191?2:1;if(i+f<=n)switch(f){case 1:u<128&&(l=u);break;case 2:128==(192&(a=e[i+1]))&&(d=(31&u)<<6|63&a)>127&&(l=d);break;case 3:a=e[i+1],s=e[i+2],128==(192&a)&&128==(192&s)&&(d=(15&u)<<12|(63&a)<<6|63&s)>2047&&(d<55296||d>57343)&&(l=d);break;case 4:a=e[i+1],s=e[i+2],o=e[i+3],128==(192&a)&&128==(192&s)&&128==(192&o)&&(d=(15&u)<<18|(63&a)<<12|(63&s)<<6|63&o)>65535&&d<1114112&&(l=d)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),i+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=4096));return n}(r)}t.Buffer=d,t.SlowBuffer=function(e){+e!=e&&(e=0);return d.alloc(+e)},t.INSPECT_MAX_BYTES=50,d.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),t.kMaxLength=s(),d.poolSize=8192,d._augment=function(e){return e.__proto__=d.prototype,e},d.from=function(e,t,n){return u(null,e,t,n)},d.TYPED_ARRAY_SUPPORT&&(d.prototype.__proto__=Uint8Array.prototype,d.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&d[Symbol.species]===d&&Object.defineProperty(d,Symbol.species,{value:null,configurable:!0})),d.alloc=function(e,t,n){return function(e,t,n,r){return l(t),t<=0?o(e,t):void 0!==n?"string"==typeof r?o(e,t).fill(n,r):o(e,t).fill(n):o(e,t)}(null,e,t,n)},d.allocUnsafe=function(e){return f(null,e)},d.allocUnsafeSlow=function(e){return f(null,e)},d.isBuffer=function(e){return!(null==e||!e._isBuffer)},d.compare=function(e,t){if(!d.isBuffer(e)||!d.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},d.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},d.concat=function(e,t){if(!a(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return d.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=d.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){var s=e[n];if(!d.isBuffer(s))throw new TypeError('"list" argument must be an Array of Buffers');s.copy(r,i),i+=s.length}return r},d.byteLength=m,d.prototype._isBuffer=!0,d.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)B(this,t,t+1);return this},d.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)B(this,t,t+3),B(this,t+1,t+2);return this},d.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)B(this,t,t+7),B(this,t+1,t+6),B(this,t+2,t+5),B(this,t+3,t+4);return this},d.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?D(this,0,e):p.apply(this,arguments)},d.prototype.equals=function(e){if(!d.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===d.compare(this,e)},d.prototype.inspect=function(){var e="",n=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),"<Buffer "+e+">"},d.prototype.compare=function(e,t,n,r,i){if(!d.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var a=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0),o=Math.min(a,s),u=this.slice(r,i),l=e.slice(t,n),f=0;f<o;++f)if(u[f]!==l[f]){a=u[f],s=l[f];break}return a<s?-1:s<a?1:0},d.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},d.prototype.indexOf=function(e,t,n){return h(this,e,t,n,!0)},d.prototype.lastIndexOf=function(e,t,n){return h(this,e,t,n,!1)},d.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(n)?(n|=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return v(this,e,t,n);case"utf8":case"utf-8":return O(this,e,t,n);case"ascii":return y(this,e,t,n);case"latin1":case"binary":return I(this,e,t,n);case"base64":return L(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},d.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function b(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function C(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function R(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i="",a=t;a<n;++a)i+=x(e[a]);return i}function w(e,t,n){for(var r=e.slice(t,n),i="",a=0;a<r.length;a+=2)i+=String.fromCharCode(r[a]+256*r[a+1]);return i}function F(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function M(e,t,n,r,i,a){if(!d.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<a)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function P(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-n,2);i<a;++i)e[n+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function A(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-n,4);i<a;++i)e[n+i]=t>>>8*(r?i:3-i)&255}function E(e,t,n,r,i,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function k(e,t,n,r,a){return a||E(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function _(e,t,n,r,a){return a||E(e,0,n,8),i.write(e,t,n,r,52,8),n+8}d.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e),d.TYPED_ARRAY_SUPPORT)(n=this.subarray(e,t)).__proto__=d.prototype;else{var i=t-e;n=new d(i,void 0);for(var a=0;a<i;++a)n[a]=this[a+e]}return n},d.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||F(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r},d.prototype.readUIntBE=function(e,t,n){e|=0,t|=0,n||F(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},d.prototype.readUInt8=function(e,t){return t||F(e,1,this.length),this[e]},d.prototype.readUInt16LE=function(e,t){return t||F(e,2,this.length),this[e]|this[e+1]<<8},d.prototype.readUInt16BE=function(e,t){return t||F(e,2,this.length),this[e]<<8|this[e+1]},d.prototype.readUInt32LE=function(e,t){return t||F(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},d.prototype.readUInt32BE=function(e,t){return t||F(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},d.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||F(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},d.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||F(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},d.prototype.readInt8=function(e,t){return t||F(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},d.prototype.readInt16LE=function(e,t){t||F(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},d.prototype.readInt16BE=function(e,t){t||F(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},d.prototype.readInt32LE=function(e,t){return t||F(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},d.prototype.readInt32BE=function(e,t){return t||F(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},d.prototype.readFloatLE=function(e,t){return t||F(e,4,this.length),i.read(this,e,!0,23,4)},d.prototype.readFloatBE=function(e,t){return t||F(e,4,this.length),i.read(this,e,!1,23,4)},d.prototype.readDoubleLE=function(e,t){return t||F(e,8,this.length),i.read(this,e,!0,52,8)},d.prototype.readDoubleBE=function(e,t){return t||F(e,8,this.length),i.read(this,e,!1,52,8)},d.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||M(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[t]=255&e;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},d.prototype.writeUIntBE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||M(this,e,t,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},d.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,1,255,0),d.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},d.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,65535,0),d.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):P(this,e,t,!0),t+2},d.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,65535,0),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},d.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,4294967295,0),d.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):A(this,e,t,!0),t+4},d.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,4294967295,0),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):A(this,e,t,!1),t+4},d.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);M(this,e,t,n,i-1,-i)}var a=0,s=1,o=0;for(this[t]=255&e;++a<n&&(s*=256);)e<0&&0===o&&0!==this[t+a-1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+n},d.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);M(this,e,t,n,i-1,-i)}var a=n-1,s=1,o=0;for(this[t+a]=255&e;--a>=0&&(s*=256);)e<0&&0===o&&0!==this[t+a+1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+n},d.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,1,127,-128),d.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},d.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,32767,-32768),d.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):P(this,e,t,!0),t+2},d.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,32767,-32768),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},d.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,2147483647,-2147483648),d.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):A(this,e,t,!0),t+4},d.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):A(this,e,t,!1),t+4},d.prototype.writeFloatLE=function(e,t,n){return k(this,e,t,!0,n)},d.prototype.writeFloatBE=function(e,t,n){return k(this,e,t,!1,n)},d.prototype.writeDoubleLE=function(e,t,n){return _(this,e,t,!0,n)},d.prototype.writeDoubleBE=function(e,t,n){return _(this,e,t,!1,n)},d.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var i,a=r-n;if(this===e&&n<t&&t<r)for(i=a-1;i>=0;--i)e[i+t]=this[i+n];else if(a<1e3||!d.TYPED_ARRAY_SUPPORT)for(i=0;i<a;++i)e[i+t]=this[i+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+a),t);return a},d.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!d.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;var a;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(a=t;a<n;++a)this[a]=e;else{var s=d.isBuffer(e)?e:V(new d(e,r).toString()),o=s.length;for(a=0;a<n-t;++a)this[a+t]=s[a%o]}return this};var U=/[^+\/0-9A-Za-z-_]/g;function x(e){return e<16?"0"+e.toString(16):e.toString(16)}function V(e,t){var n;t=t||1/0;for(var r=e.length,i=null,a=[],s=0;s<r;++s){if((n=e.charCodeAt(s))>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function G(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(U,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function W(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,n(2))},function(e,t,n){var r=n(24).runInContext();e.exports=n(25)(r,r)},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){(function(e){!function(t){var n,r=void 0!==e&&e,i="undefined"!=typeof Uint8Array&&Uint8Array,a="undefined"!=typeof ArrayBuffer&&ArrayBuffer,s=[0,0,0,0,0,0,0,0],o=Array.isArray||function(e){return!!e&&"[object Array]"==Object.prototype.toString.call(e)},d=4294967296;function u(e,o,u){var O=o?0:4,y=o?4:0,I=o?0:3,L=o?1:2,N=o?2:1,T=o?3:0,D=o?B:S,b=o?h:v,C=F.prototype,R="is"+e,w="_"+R;return C.buffer=void 0,C.offset=0,C[w]=!0,C.toNumber=M,C.toString=function(e){var t=this.buffer,n=this.offset,r=A(t,n+O),i=A(t,n+y),a="",s=!u&&2147483648&r;s&&(r=~r,i=d-i);e=e||10;for(;;){var o=r%e*d+i;if(r=Math.floor(r/e),i=Math.floor(o/e),a=(o%e).toString(e)+a,!r&&!i)break}s&&(a="-"+a);return a},C.toJSON=M,C.toArray=l,r&&(C.toBuffer=f),i&&(C.toArrayBuffer=g),F[R]=function(e){return!(!e||!e[w])},t[e]=F,F;function F(e,t,r,o){return this instanceof F?function(e,t,r,o,u){i&&a&&(t instanceof a&&(t=new i(t)),o instanceof a&&(o=new i(o)));if(!(t||r||o||n))return void(e.buffer=p(s,0));if(!c(t,r)){u=r,o=t,r=0,t=new(n||Array)(8)}if(e.buffer=t,e.offset=r|=0,void 0===o)return;"string"==typeof o?function(e,t,n,r){var i=0,a=n.length,s=0,o=0;"-"===n[0]&&i++;var u=i;for(;i<a;){var l=parseInt(n[i++],r);if(!(l>=0))break;o=o*r+l,s=s*r+Math.floor(o/d),o%=d}u&&(s=~s,o?o=d-o:s++);P(e,t+O,s),P(e,t+y,o)}(t,r,o,u||10):c(o,u)?m(t,r,o,u):"number"==typeof u?(P(t,r+O,o),P(t,r+y,u)):o>0?D(t,r,o):o<0?b(t,r,o):m(t,r,s,0)}(this,e,t,r,o):new F(e,t,r,o)}function M(){var e=this.buffer,t=this.offset,n=A(e,t+O),r=A(e,t+y);return u||(n|=0),n?n*d+r:r}function P(e,t,n){e[t+T]=255&n,n>>=8,e[t+N]=255&n,n>>=8,e[t+L]=255&n,n>>=8,e[t+I]=255&n}function A(e,t){return 16777216*e[t+I]+(e[t+L]<<16)+(e[t+N]<<8)+e[t+T]}}function l(e){var t=this.buffer,r=this.offset;return n=null,!1!==e&&0===r&&8===t.length&&o(t)?t:p(t,r)}function f(t){var i=this.buffer,a=this.offset;if(n=r,!1!==t&&0===a&&8===i.length&&e.isBuffer(i))return i;var s=new r(8);return m(s,0,i,a),s}function g(e){var t=this.buffer,r=this.offset,s=t.buffer;if(n=i,!1!==e&&0===r&&s instanceof a&&8===s.byteLength)return s;var o=new i(8);return m(o,0,t,r),o.buffer}function c(e,t){var n=e&&e.length;return t|=0,n&&t+8<=n&&"string"!=typeof e[t]}function m(e,t,n,r){t|=0,r|=0;for(var i=0;i<8;i++)e[t++]=255&n[r++]}function p(e,t){return Array.prototype.slice.call(e,t,t+8)}function B(e,t,n){for(var r=t+8;r>t;)e[--r]=255&n,n/=256}function h(e,t,n){var r=t+8;for(n++;r>t;)e[--r]=255&-n^255,n/=256}function S(e,t,n){for(var r=t+8;t<r;)e[t++]=255&n,n/=256}function v(e,t,n){var r=t+8;for(n++;t<r;)e[t++]=255&-n^255,n/=256}u("Uint64BE",!0,!0),u("Int64BE",!0,!1),u("Uint64LE",!1,!0),u("Int64LE",!1,!1)}("string"!=typeof t.nodeName?t:this||{})}).call(this,n(0).Buffer)},function(e,t,n){(function(r){t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,i=0;t[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&(r++,"%c"===e&&(i=r))}),t.splice(i,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}!e&&void 0!==r&&"env"in r&&(e=r.env.DEBUG);return e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=n(20)(t);const{formatters:i}=e.exports;i.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}).call(this,n(19))},function(e,t,n){(function(r){var i;!function(a){var s=function(e,t,n){if(!(e instanceof ArrayBuffer||void 0!==r&&e instanceof r))throw new Error("Must specify a valid ArrayBuffer or Buffer.");t=t||0,n=n||e.byteLength||e.length,this._view=new Uint8Array(e,t,n)};s._scratch=new DataView(new ArrayBuffer(8)),Object.defineProperty(s.prototype,"buffer",{get:function(){return r.from(this._view.buffer)},enumerable:!0,configurable:!1}),Object.defineProperty(s.prototype,"byteLength",{get:function(){return this._view.length},enumerable:!0,configurable:!1}),s.prototype._setBit=function(e,t){t?this._view[e>>3]|=1<<(7&e):this._view[e>>3]&=~(1<<(7&e))},s.prototype.getBits=function(e,t,n){var r=8*this._view.length-e;if(t>r)throw new Error("Cannot get "+t+" bit(s) from offset "+e+", "+r+" available");for(var i=0,a=0;a<t;){var s=t-a,o=7&e,d=this._view[e>>3],u=Math.min(s,8-o);i|=(d>>o&(1<<u)-1)<<a,e+=u,a+=u}return n?(32!==t&&i&1<<t-1&&(i|=-1^(1<<t)-1),i):i>>>0},s.prototype.setBits=function(e,t,n){var r=8*this._view.length-e;if(n>r)throw new Error("Cannot set "+n+" bit(s) from offset "+e+", "+r+" available");for(var i=0;i<n;){var a;n-i>=8&&0==(7&e)?(this._view[e>>3]=255&t,a=8):(this._setBit(e,1&t),a=1),t>>=a,e+=a,i+=a}},s.prototype.getBoolean=function(e){return 0!==this.getBits(e,1,!1)},s.prototype.getInt8=function(e){return this.getBits(e,8,!0)},s.prototype.getUint8=function(e){return this.getBits(e,8,!1)},s.prototype.getInt16=function(e){return this.getBits(e,16,!0)},s.prototype.getUint16=function(e){return this.getBits(e,16,!1)},s.prototype.getInt32=function(e){return this.getBits(e,32,!0)},s.prototype.getUint32=function(e){return this.getBits(e,32,!1)},s.prototype.getFloat32=function(e){return s._scratch.setUint32(0,this.getUint32(e)),s._scratch.getFloat32(0)},s.prototype.getFloat64=function(e){return s._scratch.setUint32(0,this.getUint32(e)),s._scratch.setUint32(4,this.getUint32(e+32)),s._scratch.getFloat64(0)},s.prototype.setBoolean=function(e,t){this.setBits(e,t?1:0,1)},s.prototype.setInt8=s.prototype.setUint8=function(e,t){this.setBits(e,t,8)},s.prototype.setInt16=s.prototype.setUint16=function(e,t){this.setBits(e,t,16)},s.prototype.setInt32=s.prototype.setUint32=function(e,t){this.setBits(e,t,32)},s.prototype.setFloat32=function(e,t){s._scratch.setFloat32(0,t),this.setBits(e,s._scratch.getUint32(0),32)},s.prototype.setFloat64=function(e,t){s._scratch.setFloat64(0,t),this.setBits(e,s._scratch.getUint32(0),32),this.setBits(e+32,s._scratch.getUint32(4),32)},s.prototype.getArrayBuffer=function(e,t){for(var n=new Uint8Array(t),r=0;r<t;r++)n[r]=this.getUint8(e+8*r);return n};var o=function(e,t){return function(){if(this._index+t>this._length)throw new Error("Trying to read past the end of the stream");var n=this._view[e](this._index);return this._index+=t,n}},d=function(e,t){return function(n){this._view[e](this._index,n),this._index+=t}};function u(e,t,n){if(0===t)return"";var r=0,i=[],a=!0,s=!!t;for(t||(t=Math.floor((e._length-e._index)/8));r<t;){var o=e.readUint8();if(0===o&&(a=!1,!s))break;a&&i.push(o),r++}var d=String.fromCharCode.apply(null,i);if(!n)return d;try{return decodeURIComponent(escape(d))}catch(e){return d}}var l=function(e,t,n){var i=e instanceof ArrayBuffer||void 0!==r&&e instanceof r;if(!(e instanceof s||i))throw new Error("Must specify a valid BitView, ArrayBuffer or Buffer");this._view=i?new s(e,t,n):e,this._index=0,this._startIndex=0,this._length=8*this._view.byteLength};Object.defineProperty(l.prototype,"index",{get:function(){return this._index-this._startIndex},set:function(e){this._index=e+this._startIndex},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"length",{get:function(){return this._length-this._startIndex},set:function(e){this._length=e+this._startIndex},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"bitsLeft",{get:function(){return this._length-this._index},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"byteIndex",{get:function(){return Math.ceil(this._index/8)},set:function(e){this._index=8*e},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"buffer",{get:function(){return this._view.buffer},enumerable:!0,configurable:!1}),Object.defineProperty(l.prototype,"view",{get:function(){return this._view},enumerable:!0,configurable:!1}),l.prototype.readBits=function(e,t){var n=this._view.getBits(this._index,e,t);return this._index+=e,n},l.prototype.writeBits=function(e,t){this._view.setBits(this._index,e,t),this._index+=t},l.prototype.readBoolean=o("getBoolean",1),l.prototype.readInt8=o("getInt8",8),l.prototype.readUint8=o("getUint8",8),l.prototype.readInt16=o("getInt16",16),l.prototype.readUint16=o("getUint16",16),l.prototype.readInt32=o("getInt32",32),l.prototype.readUint32=o("getUint32",32),l.prototype.readFloat32=o("getFloat32",32),l.prototype.readFloat64=o("getFloat64",64),l.prototype.writeBoolean=d("setBoolean",1),l.prototype.writeInt8=d("setInt8",8),l.prototype.writeUint8=d("setUint8",8),l.prototype.writeInt16=d("setInt16",16),l.prototype.writeUint16=d("setUint16",16),l.prototype.writeInt32=d("setInt32",32),l.prototype.writeUint32=d("setUint32",32),l.prototype.writeFloat32=d("setFloat32",32),l.prototype.writeFloat64=d("setFloat64",64),l.prototype.readASCIIString=function(e){return function(e,t){return u(e,t,!1)}(this,e)},l.prototype.readUTF8String=function(e){return function(e,t){return u(e,t,!0)}(this,e)},l.prototype.writeASCIIString=function(e,t){!function(e,t,n){for(var r=n||t.length+1,i=0;i<r;i++)e.writeUint8(i<t.length?t.charCodeAt(i):0)}(this,e,t)},l.prototype.writeUTF8String=function(e,t){!function(e,t,n){for(var r=function(e){var t,n,r=[];for(t=0;t<e.length;t++)(n=e.charCodeAt(t))<=127?r.push(n):n<=2047?(r.push(n>>6|192),r.push(63&n|128)):n<=65535?(r.push(n>>12|224),r.push(n>>6&63|128),r.push(63&n|128)):(r.push(n>>18|240),r.push(n>>12&63|128),r.push(n>>6&63|128),r.push(63&n|128));return r}(t),i=n||r.length+1,a=0;a<i;a++)e.writeUint8(a<r.length?r[a]:0)}(this,e,t)},l.prototype.readBitStream=function(e){var t=new l(this._view);return t._startIndex=this._index,t._index=this._index,t.length=e,this._index+=e,t},l.prototype.writeBitStream=function(e,t){var n;for(t||(t=e.bitsLeft);t>0;)n=Math.min(t,32),this.writeBits(e.readBits(n),n),t-=n},l.prototype.readArrayBuffer=function(e){var t=this._view.getArrayBuffer(this._index,e);return this._index+=8*e,t},l.prototype.writeArrayBuffer=function(e,t){this.writeBitStream(new l(e),8*t)},void 0===(i=function(){return{BitView:s,BitStream:l}}.call(t,n,t,e))||(e.exports=i)}()}).call(this,n(0).Buffer)},function(e,t,n){(function(e){const{keys:r,map:i,padCharsStart:a,trimChars:s}=n(1);t.getPlainPGNs=function(t){var n=[],r=64,i=e.alloc(8);i.writeUInt8(r++,0),i.writeUInt8(t.length,1),t.copy(i,2,0,6),n.push(i);for(var a=6;a<t.length;a+=7){var s=e.alloc(8);s.writeUInt8(r++,0);var o=a+7,d=0;if(o>t.length&&(d=o-t.length,o=t.length),t.copy(s,1,a,o),d>0)for(var u=o-a+1;u<8;u++)s.writeUInt8(255,u);n.push(s)}return n};const o=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"];t.compute0183Checksum=function(e){let t=1,n=e.charCodeAt(t);for(t=2;t<e.length;++t)n^=e.charCodeAt(t);return"*"+(o[(r=n)>>4&15]+o[r>>0&15]);var r},t.trimWrap=s("()<>[]"),t.rmChecksum=e=>e.includes("*")?e.split("*",1)[0]:e,t.arrBuff=(t,n="hex")=>e.from(t.join(""),n),t.hexByte=e=>a("0",2,Number(e).toString(16)),t.byteString=(e,n=",")=>i(t.hexByte,new Uint32Array(e)).join(n)}).call(this,n(0).Buffer)},function(e,t,n){const{flow:r}=n(1);t.parseCanId=e=>{const t={canId:e,prio:e>>26&7,src:255&e},n=e>>16&255,r=e>>8&255,i=e>>24&1;return n<240?(t.dst=r,t.pgn=(i<<16)+(n<<8)):(t.dst=255,t.pgn=(i<<16)+(n<<8)+r),t},t.parseCanIdStr=e=>t.parseCanId(parseInt(e,16)),t.buildCanId=(e,t,n,r)=>({prio:Number(e),pgn:Number(t),dst:Number(n),src:Number(r)}),t.encodeCanId=({dst:e,pgn:t,prio:n,src:r})=>{let i=255&r;return(t>>8&255)<240?(i|=(255&e)<<8,i|=t<<8):i|=t<<8,i|=n<<26,i},t.canIdString=e=>e.toString(16).padStart(8,"0"),t.encodeCanIdString=r(t.encodeCanId,t.canIdString),t.parseEncode=e=>t.encodeCanId(t.parseCanId(e))},function(e,t,n){(function(t){const r=n(4)("canboatjs:fromPgn"),i=n(4)("canboatjs:fromPgn:trace"),a=n(22),s=n(23),o=n(9),{pgns:d}=n(11),u=n(5).BitStream,l=n(5).BitView,f=n(3).Int64LE,g=n(3).Uint64LE,{parse:c}=n(14),{getPGNFromCanId:m}=n(6),{getIndustryName:p,getManufacturerName:B}=n(12),{parseCanId:h}=n(7),{parseN2kString:S,parseYDRAW:v,isN2KOver0183:O,parseN2KOver0183:y,parsePDGY:I}=n(13);var L={},N={};new f(4294967295,4294967295),new f(2147483647,4294967295);const T=[];function D(e,t){var n=d[e];if(n){e=n[0];if(t>=0&&t<e.Fields.length)return e.Fields[t];if(e.RepeatingFields){var r=e.Fields.length-e.RepeatingFields;return t=r+(t-r)%e.RepeatingFields,e.Fields[t]}}return null}function b(e){return 1===(e=e.toString()).length?"0"+e:e}function C(e,t){return e.value2name||(e.value2name={},e.EnumBitValues.forEach((function(t){var n=o.keys(t)[0];e.value2name[Number(n)]=t[n]}))),e.value2name[t]}function R(e,t,n,r,i){var a,s=L[r.Type];if(s)a=s(n,r,i);else{if(i.bitsLeft<r.BitLength)return void i.readBits(i.bitsLeft,!1);a=function(e,t,n,r,i){var a;o.isUndefined(i)&&(i=n.BitLength);if(0==i)return function(e,t,n,r){var i=D(t.fields.PGN,r.view.buffer[r.byteIndex-1]-1);if(i){i.BitLength;return R(e,!1,t,i,r)}}(e,t,0,r);if(8===i)a=n.Signed?127===(a=r.readInt8())?null:a:255===(a=r.readUint8())?null:a;else if(16==i)a=n.Signed?32767===(a=r.readInt16())?null:a:65535===(a=r.readUint16())?null:a;else if(24==i){var s=r.readUint8(),d=r.readUint8(),u=r.readUint8();a=(u<<16)+(d<<8)+s}else if(32==i)a=n.Signed?2147483647===(a=r.readInt32())?null:a:4294967295===(a=r.readUint32())?null:a;else if(48==i){var l=r.readUint32(),c=r.readUint16();a=n.Signed?4294967295==l&&32767==c?null:new f(c,l):4294967295==l&&65535==c?null:new f(c,l)}else if(64==i){var m=r.readUint32(),p=r.readUint32();a=n.Signed?4294967295===m&&2147483647==p?null:new f(p,m):4294967295===m&&4294967295==p?null:new g(p,m)}else a=r.readBits(i,n.Signed),i>1&&function(e,t,n){n&&e--;for(;e--;){if(0==(1&t))return!1;t>>=1}return!n||0==(1&t)}(i,a,n.Signed)&&(a=null);null!=a&&void 0!==a&&"number"!=typeof a&&(a=Number(a));return a}(e,n,r,i)}if(null!=a&&!o.isUndefined(a)){var d=N[r.Type];if(d)t&&(a=d(r,a));else{if(r.Offset&&(a+=r.Offset),r.Resolution&&"number"==typeof a){var u=r.Resolution;a*=u,3.125e-8===u&&(u="0.0000000001"),o.isString(u)&&-1!=u.indexOf(".")&&(a=Number.parseFloat(a.toFixed(u.length-2)))}if(r.EnumValues&&(o.isUndefined(e.resolveEnums)||e.resolveEnums)&&(a="timeStamp"===r.Id&&a<60?a.toString():function(e,t){e.value2name||(e.value2name={},e.EnumValues.forEach((function(t){e.value2name[Number(t.value)]=t.name})));var n=e.value2name[t];return n||t}(r,a)),"Industry Code"===r.Name&&o.isNumber(a)&&t){var l=p(a);l&&(a=l)}"kWh"===r.Units?a*=36e5:"Ah"===r.Units&&(a*=3600)}}return a}L["ASCII or UNICODE string starting with length and control byte"]=(e,n,r)=>{if(r.bitsLeft>=16){const e=r.readUint8()-2,o=r.readUint8();let d=e;if("AtoN Name"===n.Name&&e>20)d=20;else if(e<=0)return null;for(var i=t.alloc(e),a=0;a<e&&r.bitsLeft>=8;a++){var s=r.readUint8();i.writeUInt8(s,a)}return i.toString(0==o?"utf8":"ascii",0,a<d?a:d).trim()}return null},L["ASCII string starting with length byte"]=(e,n,r)=>{for(var i=r.readUint8(),a=t.alloc(i),s=0;s<i&&r.bitsLeft>=8;s++){var o=r.readUint8();a.writeUInt8(o,s)}return a.toString("ascii",0,s)},L["String with start/stop byte"]=(e,n,r)=>{var i=r.readUint8();if(2==i){for(var a=t.alloc(255),s=0;1!=(u=r.readUint8());)a.writeUInt8(u,s++);return a.toString("ascii",0,s)}if(i>2){var o=i,d=r.readUint8();a=t.alloc(o),s=0;for(1==d?o-=2:(a.writeUInt8(d),s=1);s<o;s++){var u=r.readUint8();a.writeUInt8(u,s)}return a.toString("ascii",0,s)}},L["ASCII text"]=(e,n,r)=>{for(var i=n.BitLength/8,a=t.alloc(i),s=0;s<i&&r.bitsLeft>=8;s++)a.writeUInt8(r.readUint8(),s);var o=a[i-1];if(255==o||32==o||0==o||64==o)for(;i>0&&a[i-1]==o;)i--;return a.toString("ascii",0,i)},L.Bitfield=(e,t,n)=>{for(var r=[],i=0;i<t.BitLength;i++)n.readBits(1,0)&&r.push(C(t,i));return r},N.Date=(e,t)=>{if(t>=65533)t=void 0;else{var n=new Date(86400*t*1e3);t=`${n.getUTCFullYear()}.${b(n.getUTCMonth()+1)}.${b(n.getUTCDate())}`}return t},N.Time=(e,t)=>{if(t>=4294967293)t=void 0;else{var n=(r=t/1e4)/60,r=r%60,i=Math.floor(n/60);n=Math.floor(n%60);t=`${b(i)}:${b(n)}:${b(Math.floor(r))}`,r%1>0&&(t+=(r%1).toFixed(5).substring(1))}return t},N.Pressure=(e,t)=>{if(e.Units)switch(e.Units[0]){case"h":case"H":t*=100;break;case"k":case"K":t*=1e3;break;case"d":t/=10}return t},N["Binary data"]=(e,t)=>t.toString(),N["Manufacturer code"]=(e,t)=>{var n=B(t);return n||t},e.exports={Parser:class extends a{constructor(e){super(),this.options=o.isUndefined(e)?{}:e,this.name=s.name,this.version=s.version,this.author=s.author,this.license=s.license,this.format=o.isUndefined(this.options.format)?-1:this.options.format,this.devices={},this.mixedFormat=this.options.mixedFormat||!1}_parse(e,n,a,s,f,g){if(-1!=T.indexOf(e.pgn))return void this.emit("warning",e,"ignoring pgn");let c=d[e.pgn];if(!c)return void this.emit("warning",e,"no conversion found for pgn "+JSON.stringify(e));let m=c[0],p=!1;if(c.length>0&&8==a&&c.forEach(e=>{e.Length>8&&(p=!0)}),i(`${e.pgn} ${a} ${m.Length} ${m.RepeatingFields} ${p}`),a>8||1==this.format&&!this.mixedFormat)this.format=1,g&&(e.input=[g]);else if(m.Length>8||8==a&&(m.RepeatingFields||p)){this.format=0,o.isUndefined(this.devices[e.src])&&(this.devices[e.src]={});var B=this.devices[e.src][e.pgn];B||(B={bufferSize:0,lastPacket:0,src:[]},this.devices[e.src][e.pgn]=B),g&&B.src.push(g);var h=n.byteIndex,S=n.view.buffer.readUInt8(0),v=31&S,O=!1;if(i(`${e.pgn} partial ${S} ${v} ${B.size}`),0==v){B.size=n.view.buffer.readUInt8(1);var y=B.size+7;if(y>B.bufferSize){var I=t.alloc(y);B.bufferSize=y,B.buffer&&B.buffer.copy(I),B.buffer=I}n.view.buffer.copy(B.buffer,0,2,8),i(e.pgn+" targetStart: 0 sourceStart: 2")}else g&&B.src.push(g),B.lastPacket+1!=S?(r(`PGN ${e.pgn} malformed packet for ${e.src} received; expected ${B.lastPacket+1} but got ${S}`),f&&f("Could not parse "+JSON.stringify(e)),n.byteIndex=h,O=!0):(i(`${e.pgn} targetStart: ${6+7*(v-1)} sourceStart: 1 sourceEned: 7`),n.view.buffer.copy(B.buffer,6+7*(v-1),1,8));if(!O){if(B.lastPacket=S,6+7*v<B.size)return void i(e.pgn+" not complete");var L=new l(B.buffer);n=new u(L),i(e.pgn+" done"),e.input=B.src,delete this.devices[e.src][e.pgn]}}else g&&(e.input=[g]);e.fields={};try{for(var N=m.Fields,D=0;D<N.length-m.RepeatingFields;D++){var b=N[D],C=!o.isUndefined(b.Match),w=R(this.options,!C,e,b,n);if(C){if(c=c.filter(e=>e.Fields[D].Match==w),0==c.length)return void i("warning no conversion found for pgn %j",e);m=c[0],N=m.Fields,w=m.Fields[D].Description}o.isUndefined(w)||null==w||(e.fields[b.Name]=w)}if(m.RepeatingFields>0){var F=N.slice(N.length-m.RepeatingFields);for(e.fields.list=[];n.bitsLeft>0;){var M={};F.forEach(t=>{if(n.bitsLeft>0){var r=R(this.options,!0,e,t,n);o.isUndefined(r)||null==r||(M[t.Name]=r)}}),o.keys(M).length>0&&e.fields.list.push(M)}}e.description=m.Description;const t=o.get(e,"timestamp",new Date);return e.timestamp=o.isDate(t)?t.toISOString():t,this.emit("pgn",e),f&&f(void 0,e),e}catch(t){return this.emit("error",e,t),void(f&&f(t))}}parse(e,t){return o.isString(e)?this.parseString(e,t):o.isBuffer(e)?this.parseBuffer(e,t):this.parsePgnData(e.pgn,e.length,e.data,!1,t)}parsePgnData(e,n,i,a,s){try{var d=i;if(!o.isBuffer(i)){var f=new Int16Array(n);i.forEach((e,t)=>{f[t]=parseInt(e,16)}),d=t.from(f)}var g=new l(d),c=new u(g);const m=this._parse(e,c,n,a,s);return m&&r("parsed pgn %j",e),m}catch(t){s&&s(t),this.emit("error",e,t)}}isN2KOver0183(e){return O(e)}parseN2KOver0183(e,t){return this.parseString(e,t)}parseVenusMQTT(e,n){try{const i={pgn:e.pgn,timestamp:(new Date).toISOString(),src:e.src,dst:e.dst},a=new u(t.from(e.data,"base64")),s=this._parse(i,a,8,!1,n);return s&&r("parsed pgn %j",i),s}catch(e){n&&n(e),this.emit("error",pgn,e)}}parseYDGW02(e,t){try{const{data:n,direction:i,error:a,...s}=v(e);if(a||"R"!==i)a&&(t&&t(a),this.emit("error",e,a));else{const i=new u(n);delete s.format;const a=this._parse(s,i,n.length,!1,t,e);if(a)return r("parsed ydgw02 pgn %j",e),a}}catch(n){t&&t(n),this.emit("error",e,n)}}parsePDGY(e,t){if("!"==e[0])try{const{coalesced:n,data:i,error:a,len:s,...o}=I(e);if(a)return t&&t(a),void this.emit("error",o,a);const d=new u(i);delete o.format,delete o.type,delete o.prefix;const l=this._parse(o,d,s||i.length,n,t,e);return l&&r("parsed pgn %j",o),l}catch(n){t&&t(n),this.emit("error",e,n)}}parseString(e,t){try{const{coalesced:n,data:i,error:a,len:s,...o}=S(e);if(a)return t&&t(a),void this.emit("error",o,a);const d=new u(i);delete o.format,delete o.type,delete o.prefix;const l=this._parse(o,d,s||i.length,n,t,e);return l&&r("parsed pgn %j",o),l}catch(n){t&&t(n),this.emit("error",e,n)}}parseBuffer(e,t){try{var n=new l(e),i=new u(n),a={};a.prio=i.readUint8(),a.pgn=i.readUint8()+256*(i.readUint8()+256*i.readUint8()),a.dst=i.readUint8(),a.src=i.readUint8(),a.timestamp=(new Date).toISOString();i.readUint32();var s=i.readUint8();const o=this._parse(a,i,s,!0,t);return o&&r("parsed pgn %j",a),o}catch(e){const n=new Error(`error reading pgn ${JSON.stringify(a)} ${e}`);return t&&t(n),this.emit("error",a,e),void console.error(n)}}},getField:D}}).call(this,n(0).Buffer)},function(e,t,n){(function(e,r){var i;
|
|
9
|
-
/**
|
|
10
|
-
* @license
|
|
11
|
-
* Lodash <https://lodash.com/>
|
|
12
|
-
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
|
13
|
-
* Released under MIT license <https://lodash.com/license>
|
|
14
|
-
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
|
15
|
-
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
|
16
|
-
*/(function(){var a="Expected a function",s="__lodash_placeholder__",o=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],d="[object Arguments]",u="[object Array]",l="[object Boolean]",f="[object Date]",g="[object Error]",c="[object Function]",m="[object GeneratorFunction]",p="[object Map]",B="[object Number]",h="[object Object]",S="[object RegExp]",v="[object Set]",O="[object String]",y="[object Symbol]",I="[object WeakMap]",L="[object ArrayBuffer]",N="[object DataView]",T="[object Float32Array]",D="[object Float64Array]",b="[object Int8Array]",C="[object Int16Array]",R="[object Int32Array]",w="[object Uint8Array]",F="[object Uint16Array]",M="[object Uint32Array]",P=/\b__p \+= '';/g,A=/\b(__p \+=) '' \+/g,E=/(__e\(.*?\)|\b__t\)) \+\n'';/g,k=/&(?:amp|lt|gt|quot|#39);/g,_=/[&<>"']/g,U=RegExp(k.source),x=RegExp(_.source),V=/<%-([\s\S]+?)%>/g,G=/<%([\s\S]+?)%>/g,W=/<%=([\s\S]+?)%>/g,q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,z=/^\w*$/,H=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,j=/[\\^$.*+?()[\]{}|]/g,Y=RegExp(j.source),Z=/^\s+|\s+$/g,K=/^\s+/,X=/\s+$/,$=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Q=/\{\n\/\* \[wrapped with (.+)\] \*/,J=/,? & /,ee=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,te=/\\(\\)?/g,ne=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,re=/\w*$/,ie=/^[-+]0x[0-9a-f]+$/i,ae=/^0b[01]+$/i,se=/^\[object .+?Constructor\]$/,oe=/^0o[0-7]+$/i,de=/^(?:0|[1-9]\d*)$/,ue=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,le=/($^)/,fe=/['\n\r\u2028\u2029\\]/g,ge="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",me="[\\ud800-\\udfff]",pe="["+ce+"]",Be="["+ge+"]",he="\\d+",Se="[\\u2700-\\u27bf]",ve="[a-z\\xdf-\\xf6\\xf8-\\xff]",Oe="[^\\ud800-\\udfff"+ce+he+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",ye="\\ud83c[\\udffb-\\udfff]",Ie="[^\\ud800-\\udfff]",Le="(?:\\ud83c[\\udde6-\\uddff]){2}",Ne="[\\ud800-\\udbff][\\udc00-\\udfff]",Te="[A-Z\\xc0-\\xd6\\xd8-\\xde]",De="(?:"+ve+"|"+Oe+")",be="(?:"+Te+"|"+Oe+")",Ce="(?:"+Be+"|"+ye+")"+"?",Re="[\\ufe0e\\ufe0f]?"+Ce+("(?:\\u200d(?:"+[Ie,Le,Ne].join("|")+")[\\ufe0e\\ufe0f]?"+Ce+")*"),we="(?:"+[Se,Le,Ne].join("|")+")"+Re,Fe="(?:"+[Ie+Be+"?",Be,Le,Ne,me].join("|")+")",Me=RegExp("['’]","g"),Pe=RegExp(Be,"g"),Ae=RegExp(ye+"(?="+ye+")|"+Fe+Re,"g"),Ee=RegExp([Te+"?"+ve+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[pe,Te,"$"].join("|")+")",be+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[pe,Te+De,"$"].join("|")+")",Te+"?"+De+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Te+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",he,we].join("|"),"g"),ke=RegExp("[\\u200d\\ud800-\\udfff"+ge+"\\ufe0e\\ufe0f]"),_e=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ue=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],xe=-1,Ve={};Ve[T]=Ve[D]=Ve[b]=Ve[C]=Ve[R]=Ve[w]=Ve["[object Uint8ClampedArray]"]=Ve[F]=Ve[M]=!0,Ve[d]=Ve[u]=Ve[L]=Ve[l]=Ve[N]=Ve[f]=Ve[g]=Ve[c]=Ve[p]=Ve[B]=Ve[h]=Ve[S]=Ve[v]=Ve[O]=Ve[I]=!1;var Ge={};Ge[d]=Ge[u]=Ge[L]=Ge[N]=Ge[l]=Ge[f]=Ge[T]=Ge[D]=Ge[b]=Ge[C]=Ge[R]=Ge[p]=Ge[B]=Ge[h]=Ge[S]=Ge[v]=Ge[O]=Ge[y]=Ge[w]=Ge["[object Uint8ClampedArray]"]=Ge[F]=Ge[M]=!0,Ge[g]=Ge[c]=Ge[I]=!1;var We={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},qe=parseFloat,ze=parseInt,He="object"==typeof e&&e&&e.Object===Object&&e,je="object"==typeof self&&self&&self.Object===Object&&self,Ye=He||je||Function("return this")(),Ze=t&&!t.nodeType&&t,Ke=Ze&&"object"==typeof r&&r&&!r.nodeType&&r,Xe=Ke&&Ke.exports===Ze,$e=Xe&&He.process,Qe=function(){try{var e=Ke&&Ke.require&&Ke.require("util").types;return e||$e&&$e.binding&&$e.binding("util")}catch(e){}}(),Je=Qe&&Qe.isArrayBuffer,et=Qe&&Qe.isDate,tt=Qe&&Qe.isMap,nt=Qe&&Qe.isRegExp,rt=Qe&&Qe.isSet,it=Qe&&Qe.isTypedArray;function at(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function st(e,t,n,r){for(var i=-1,a=null==e?0:e.length;++i<a;){var s=e[i];t(r,s,n(s),e)}return r}function ot(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function dt(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function ut(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function lt(e,t){for(var n=-1,r=null==e?0:e.length,i=0,a=[];++n<r;){var s=e[n];t(s,n,e)&&(a[i++]=s)}return a}function ft(e,t){return!!(null==e?0:e.length)&&yt(e,t,0)>-1}function gt(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}function ct(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}function mt(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function pt(e,t,n,r){var i=-1,a=null==e?0:e.length;for(r&&a&&(n=e[++i]);++i<a;)n=t(n,e[i],i,e);return n}function Bt(e,t,n,r){var i=null==e?0:e.length;for(r&&i&&(n=e[--i]);i--;)n=t(n,e[i],i,e);return n}function ht(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var St=Tt("length");function vt(e,t,n){var r;return n(e,(function(e,n,i){if(t(e,n,i))return r=n,!1})),r}function Ot(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}function yt(e,t,n){return t==t?function(e,t,n){var r=n-1,i=e.length;for(;++r<i;)if(e[r]===t)return r;return-1}(e,t,n):Ot(e,Lt,n)}function It(e,t,n,r){for(var i=n-1,a=e.length;++i<a;)if(r(e[i],t))return i;return-1}function Lt(e){return e!=e}function Nt(e,t){var n=null==e?0:e.length;return n?Ct(e,t)/n:NaN}function Tt(e){return function(t){return null==t?void 0:t[e]}}function Dt(e){return function(t){return null==e?void 0:e[t]}}function bt(e,t,n,r,i){return i(e,(function(e,i,a){n=r?(r=!1,e):t(n,e,i,a)})),n}function Ct(e,t){for(var n,r=-1,i=e.length;++r<i;){var a=t(e[r]);void 0!==a&&(n=void 0===n?a:n+a)}return n}function Rt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function wt(e){return function(t){return e(t)}}function Ft(e,t){return ct(t,(function(t){return e[t]}))}function Mt(e,t){return e.has(t)}function Pt(e,t){for(var n=-1,r=e.length;++n<r&&yt(t,e[n],0)>-1;);return n}function At(e,t){for(var n=e.length;n--&&yt(t,e[n],0)>-1;);return n}function Et(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}var kt=Dt({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),_t=Dt({"&":"&","<":"<",">":">",'"':""","'":"'"});function Ut(e){return"\\"+We[e]}function xt(e){return ke.test(e)}function Vt(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function Gt(e,t){return function(n){return e(t(n))}}function Wt(e,t){for(var n=-1,r=e.length,i=0,a=[];++n<r;){var o=e[n];o!==t&&o!==s||(e[n]=s,a[i++]=n)}return a}function qt(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function zt(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function Ht(e){return xt(e)?function(e){var t=Ae.lastIndex=0;for(;Ae.test(e);)++t;return t}(e):St(e)}function jt(e){return xt(e)?function(e){return e.match(Ae)||[]}(e):function(e){return e.split("")}(e)}var Yt=Dt({"&":"&","<":"<",">":">",""":'"',"'":"'"});var Zt=function e(t){var n,r=(t=null==t?Ye:Zt.defaults(Ye.Object(),t,Zt.pick(Ye,Ue))).Array,i=t.Date,ge=t.Error,ce=t.Function,me=t.Math,pe=t.Object,Be=t.RegExp,he=t.String,Se=t.TypeError,ve=r.prototype,Oe=ce.prototype,ye=pe.prototype,Ie=t["__core-js_shared__"],Le=Oe.toString,Ne=ye.hasOwnProperty,Te=0,De=(n=/[^.]+$/.exec(Ie&&Ie.keys&&Ie.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",be=ye.toString,Ce=Le.call(pe),Re=Ye._,we=Be("^"+Le.call(Ne).replace(j,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Fe=Xe?t.Buffer:void 0,Ae=t.Symbol,ke=t.Uint8Array,We=Fe?Fe.allocUnsafe:void 0,He=Gt(pe.getPrototypeOf,pe),je=pe.create,Ze=ye.propertyIsEnumerable,Ke=ve.splice,$e=Ae?Ae.isConcatSpreadable:void 0,Qe=Ae?Ae.iterator:void 0,St=Ae?Ae.toStringTag:void 0,Dt=function(){try{var e=Ji(pe,"defineProperty");return e({},"",{}),e}catch(e){}}(),Kt=t.clearTimeout!==Ye.clearTimeout&&t.clearTimeout,Xt=i&&i.now!==Ye.Date.now&&i.now,$t=t.setTimeout!==Ye.setTimeout&&t.setTimeout,Qt=me.ceil,Jt=me.floor,en=pe.getOwnPropertySymbols,tn=Fe?Fe.isBuffer:void 0,nn=t.isFinite,rn=ve.join,an=Gt(pe.keys,pe),sn=me.max,on=me.min,dn=i.now,un=t.parseInt,ln=me.random,fn=ve.reverse,gn=Ji(t,"DataView"),cn=Ji(t,"Map"),mn=Ji(t,"Promise"),pn=Ji(t,"Set"),Bn=Ji(t,"WeakMap"),hn=Ji(pe,"create"),Sn=Bn&&new Bn,vn={},On=Da(gn),yn=Da(cn),In=Da(mn),Ln=Da(pn),Nn=Da(Bn),Tn=Ae?Ae.prototype:void 0,Dn=Tn?Tn.valueOf:void 0,bn=Tn?Tn.toString:void 0;function Cn(e){if(qs(e)&&!Ms(e)&&!(e instanceof Mn)){if(e instanceof Fn)return e;if(Ne.call(e,"__wrapped__"))return ba(e)}return new Fn(e)}var Rn=function(){function e(){}return function(t){if(!Ws(t))return{};if(je)return je(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function wn(){}function Fn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=void 0}function Mn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Pn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function An(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function En(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function kn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new En;++t<n;)this.add(e[t])}function _n(e){var t=this.__data__=new An(e);this.size=t.size}function Un(e,t){var n=Ms(e),r=!n&&Fs(e),i=!n&&!r&&ks(e),a=!n&&!r&&!i&&$s(e),s=n||r||i||a,o=s?Rt(e.length,he):[],d=o.length;for(var u in e)!t&&!Ne.call(e,u)||s&&("length"==u||i&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||sa(u,d))||o.push(u);return o}function xn(e){var t=e.length;return t?e[kr(0,t-1)]:void 0}function Vn(e,t){return La(hi(e),Kn(t,0,e.length))}function Gn(e){return La(hi(e))}function Wn(e,t,n){(void 0!==n&&!Cs(e[t],n)||void 0===n&&!(t in e))&&Yn(e,t,n)}function qn(e,t,n){var r=e[t];Ne.call(e,t)&&Cs(r,n)&&(void 0!==n||t in e)||Yn(e,t,n)}function zn(e,t){for(var n=e.length;n--;)if(Cs(e[n][0],t))return n;return-1}function Hn(e,t,n,r){return er(e,(function(e,i,a){t(r,e,n(e),a)})),r}function jn(e,t){return e&&Si(t,Oo(t),e)}function Yn(e,t,n){"__proto__"==t&&Dt?Dt(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function Zn(e,t){for(var n=-1,i=t.length,a=r(i),s=null==e;++n<i;)a[n]=s?void 0:po(e,t[n]);return a}function Kn(e,t,n){return e==e&&(void 0!==n&&(e=e<=n?e:n),void 0!==t&&(e=e>=t?e:t)),e}function Xn(e,t,n,r,i,a){var s,o=1&t,u=2&t,g=4&t;if(n&&(s=i?n(e,r,i,a):n(e)),void 0!==s)return s;if(!Ws(e))return e;var I=Ms(e);if(I){if(s=function(e){var t=e.length,n=new e.constructor(t);t&&"string"==typeof e[0]&&Ne.call(e,"index")&&(n.index=e.index,n.input=e.input);return n}(e),!o)return hi(e,s)}else{var P=na(e),A=P==c||P==m;if(ks(e))return fi(e,o);if(P==h||P==d||A&&!i){if(s=u||A?{}:ia(e),!o)return u?function(e,t){return Si(e,ta(e),t)}(e,function(e,t){return e&&Si(t,yo(t),e)}(s,e)):function(e,t){return Si(e,ea(e),t)}(e,jn(s,e))}else{if(!Ge[P])return i?e:{};s=function(e,t,n){var r=e.constructor;switch(t){case L:return gi(e);case l:case f:return new r(+e);case N:return function(e,t){var n=t?gi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case T:case D:case b:case C:case R:case w:case"[object Uint8ClampedArray]":case F:case M:return ci(e,n);case p:return new r;case B:case O:return new r(e);case S:return function(e){var t=new e.constructor(e.source,re.exec(e));return t.lastIndex=e.lastIndex,t}(e);case v:return new r;case y:return i=e,Dn?pe(Dn.call(i)):{}}var i}(e,P,o)}}a||(a=new _n);var E=a.get(e);if(E)return E;a.set(e,s),Zs(e)?e.forEach((function(r){s.add(Xn(r,t,n,r,e,a))})):zs(e)&&e.forEach((function(r,i){s.set(i,Xn(r,t,n,i,e,a))}));var k=I?void 0:(g?u?ji:Hi:u?yo:Oo)(e);return ot(k||e,(function(r,i){k&&(r=e[i=r]),qn(s,i,Xn(r,t,n,i,e,a))})),s}function $n(e,t,n){var r=n.length;if(null==e)return!r;for(e=pe(e);r--;){var i=n[r],a=t[i],s=e[i];if(void 0===s&&!(i in e)||!a(s))return!1}return!0}function Qn(e,t,n){if("function"!=typeof e)throw new Se(a);return va((function(){e.apply(void 0,n)}),t)}function Jn(e,t,n,r){var i=-1,a=ft,s=!0,o=e.length,d=[],u=t.length;if(!o)return d;n&&(t=ct(t,wt(n))),r?(a=gt,s=!1):t.length>=200&&(a=Mt,s=!1,t=new kn(t));e:for(;++i<o;){var l=e[i],f=null==n?l:n(l);if(l=r||0!==l?l:0,s&&f==f){for(var g=u;g--;)if(t[g]===f)continue e;d.push(l)}else a(t,f,r)||d.push(l)}return d}Cn.templateSettings={escape:V,evaluate:G,interpolate:W,variable:"",imports:{_:Cn}},Cn.prototype=wn.prototype,Cn.prototype.constructor=Cn,Fn.prototype=Rn(wn.prototype),Fn.prototype.constructor=Fn,Mn.prototype=Rn(wn.prototype),Mn.prototype.constructor=Mn,Pn.prototype.clear=function(){this.__data__=hn?hn(null):{},this.size=0},Pn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Pn.prototype.get=function(e){var t=this.__data__;if(hn){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return Ne.call(t,e)?t[e]:void 0},Pn.prototype.has=function(e){var t=this.__data__;return hn?void 0!==t[e]:Ne.call(t,e)},Pn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=hn&&void 0===t?"__lodash_hash_undefined__":t,this},An.prototype.clear=function(){this.__data__=[],this.size=0},An.prototype.delete=function(e){var t=this.__data__,n=zn(t,e);return!(n<0)&&(n==t.length-1?t.pop():Ke.call(t,n,1),--this.size,!0)},An.prototype.get=function(e){var t=this.__data__,n=zn(t,e);return n<0?void 0:t[n][1]},An.prototype.has=function(e){return zn(this.__data__,e)>-1},An.prototype.set=function(e,t){var n=this.__data__,r=zn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},En.prototype.clear=function(){this.size=0,this.__data__={hash:new Pn,map:new(cn||An),string:new Pn}},En.prototype.delete=function(e){var t=$i(this,e).delete(e);return this.size-=t?1:0,t},En.prototype.get=function(e){return $i(this,e).get(e)},En.prototype.has=function(e){return $i(this,e).has(e)},En.prototype.set=function(e,t){var n=$i(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},kn.prototype.add=kn.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},kn.prototype.has=function(e){return this.__data__.has(e)},_n.prototype.clear=function(){this.__data__=new An,this.size=0},_n.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},_n.prototype.get=function(e){return this.__data__.get(e)},_n.prototype.has=function(e){return this.__data__.has(e)},_n.prototype.set=function(e,t){var n=this.__data__;if(n instanceof An){var r=n.__data__;if(!cn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new En(r)}return n.set(e,t),this.size=n.size,this};var er=yi(dr),tr=yi(ur,!0);function nr(e,t){var n=!0;return er(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function rr(e,t,n){for(var r=-1,i=e.length;++r<i;){var a=e[r],s=t(a);if(null!=s&&(void 0===o?s==s&&!Xs(s):n(s,o)))var o=s,d=a}return d}function ir(e,t){var n=[];return er(e,(function(e,r,i){t(e,r,i)&&n.push(e)})),n}function ar(e,t,n,r,i){var a=-1,s=e.length;for(n||(n=aa),i||(i=[]);++a<s;){var o=e[a];t>0&&n(o)?t>1?ar(o,t-1,n,r,i):mt(i,o):r||(i[i.length]=o)}return i}var sr=Ii(),or=Ii(!0);function dr(e,t){return e&&sr(e,t,Oo)}function ur(e,t){return e&&or(e,t,Oo)}function lr(e,t){return lt(t,(function(t){return xs(e[t])}))}function fr(e,t){for(var n=0,r=(t=oi(t,e)).length;null!=e&&n<r;)e=e[Ta(t[n++])];return n&&n==r?e:void 0}function gr(e,t,n){var r=t(e);return Ms(e)?r:mt(r,n(e))}function cr(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":St&&St in pe(e)?function(e){var t=Ne.call(e,St),n=e[St];try{e[St]=void 0;var r=!0}catch(e){}var i=be.call(e);r&&(t?e[St]=n:delete e[St]);return i}(e):function(e){return be.call(e)}(e)}function mr(e,t){return e>t}function pr(e,t){return null!=e&&Ne.call(e,t)}function Br(e,t){return null!=e&&t in pe(e)}function hr(e,t,n){for(var i=n?gt:ft,a=e[0].length,s=e.length,o=s,d=r(s),u=1/0,l=[];o--;){var f=e[o];o&&t&&(f=ct(f,wt(t))),u=on(f.length,u),d[o]=!n&&(t||a>=120&&f.length>=120)?new kn(o&&f):void 0}f=e[0];var g=-1,c=d[0];e:for(;++g<a&&l.length<u;){var m=f[g],p=t?t(m):m;if(m=n||0!==m?m:0,!(c?Mt(c,p):i(l,p,n))){for(o=s;--o;){var B=d[o];if(!(B?Mt(B,p):i(e[o],p,n)))continue e}c&&c.push(p),l.push(m)}}return l}function Sr(e,t,n){var r=null==(e=pa(e,t=oi(t,e)))?e:e[Ta(Ua(t))];return null==r?void 0:at(r,e,n)}function vr(e){return qs(e)&&cr(e)==d}function Or(e,t,n,r,i){return e===t||(null==e||null==t||!qs(e)&&!qs(t)?e!=e&&t!=t:function(e,t,n,r,i,a){var s=Ms(e),o=Ms(t),c=s?u:na(e),m=o?u:na(t),I=(c=c==d?h:c)==h,T=(m=m==d?h:m)==h,D=c==m;if(D&&ks(e)){if(!ks(t))return!1;s=!0,I=!1}if(D&&!I)return a||(a=new _n),s||$s(e)?qi(e,t,n,r,i,a):function(e,t,n,r,i,a,s){switch(n){case N:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case L:return!(e.byteLength!=t.byteLength||!a(new ke(e),new ke(t)));case l:case f:case B:return Cs(+e,+t);case g:return e.name==t.name&&e.message==t.message;case S:case O:return e==t+"";case p:var o=Vt;case v:var d=1&r;if(o||(o=qt),e.size!=t.size&&!d)return!1;var u=s.get(e);if(u)return u==t;r|=2,s.set(e,t);var c=qi(o(e),o(t),r,i,a,s);return s.delete(e),c;case y:if(Dn)return Dn.call(e)==Dn.call(t)}return!1}(e,t,c,n,r,i,a);if(!(1&n)){var b=I&&Ne.call(e,"__wrapped__"),C=T&&Ne.call(t,"__wrapped__");if(b||C){var R=b?e.value():e,w=C?t.value():t;return a||(a=new _n),i(R,w,n,r,a)}}if(!D)return!1;return a||(a=new _n),function(e,t,n,r,i,a){var s=1&n,o=Hi(e),d=o.length,u=Hi(t).length;if(d!=u&&!s)return!1;var l=d;for(;l--;){var f=o[l];if(!(s?f in t:Ne.call(t,f)))return!1}var g=a.get(e),c=a.get(t);if(g&&c)return g==t&&c==e;var m=!0;a.set(e,t),a.set(t,e);var p=s;for(;++l<d;){f=o[l];var B=e[f],h=t[f];if(r)var S=s?r(h,B,f,t,e,a):r(B,h,f,e,t,a);if(!(void 0===S?B===h||i(B,h,n,r,a):S)){m=!1;break}p||(p="constructor"==f)}if(m&&!p){var v=e.constructor,O=t.constructor;v==O||!("constructor"in e)||!("constructor"in t)||"function"==typeof v&&v instanceof v&&"function"==typeof O&&O instanceof O||(m=!1)}return a.delete(e),a.delete(t),m}(e,t,n,r,i,a)}(e,t,n,r,Or,i))}function yr(e,t,n,r){var i=n.length,a=i,s=!r;if(null==e)return!a;for(e=pe(e);i--;){var o=n[i];if(s&&o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<a;){var d=(o=n[i])[0],u=e[d],l=o[1];if(s&&o[2]){if(void 0===u&&!(d in e))return!1}else{var f=new _n;if(r)var g=r(u,l,d,e,t,f);if(!(void 0===g?Or(l,u,3,r,f):g))return!1}}return!0}function Ir(e){return!(!Ws(e)||(t=e,De&&De in t))&&(xs(e)?we:se).test(Da(e));var t}function Lr(e){return"function"==typeof e?e:null==e?jo:"object"==typeof e?Ms(e)?Rr(e[0],e[1]):Cr(e):td(e)}function Nr(e){if(!fa(e))return an(e);var t=[];for(var n in pe(e))Ne.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Tr(e){if(!Ws(e))return function(e){var t=[];if(null!=e)for(var n in pe(e))t.push(n);return t}(e);var t=fa(e),n=[];for(var r in e)("constructor"!=r||!t&&Ne.call(e,r))&&n.push(r);return n}function Dr(e,t){return e<t}function br(e,t){var n=-1,i=As(e)?r(e.length):[];return er(e,(function(e,r,a){i[++n]=t(e,r,a)})),i}function Cr(e){var t=Qi(e);return 1==t.length&&t[0][2]?ca(t[0][0],t[0][1]):function(n){return n===e||yr(n,e,t)}}function Rr(e,t){return da(e)&&ga(t)?ca(Ta(e),t):function(n){var r=po(n,e);return void 0===r&&r===t?Bo(n,e):Or(t,r,3)}}function wr(e,t,n,r,i){e!==t&&sr(t,(function(a,s){if(i||(i=new _n),Ws(a))!function(e,t,n,r,i,a,s){var o=ha(e,n),d=ha(t,n),u=s.get(d);if(u)return void Wn(e,n,u);var l=a?a(o,d,n+"",e,t,s):void 0,f=void 0===l;if(f){var g=Ms(d),c=!g&&ks(d),m=!g&&!c&&$s(d);l=d,g||c||m?Ms(o)?l=o:Es(o)?l=hi(o):c?(f=!1,l=fi(d,!0)):m?(f=!1,l=ci(d,!0)):l=[]:js(d)||Fs(d)?(l=o,Fs(o)?l=ao(o):Ws(o)&&!xs(o)||(l=ia(d))):f=!1}f&&(s.set(d,l),i(l,d,r,a,s),s.delete(d));Wn(e,n,l)}(e,t,s,n,wr,r,i);else{var o=r?r(ha(e,s),a,s+"",e,t,i):void 0;void 0===o&&(o=a),Wn(e,s,o)}}),yo)}function Fr(e,t){var n=e.length;if(n)return sa(t+=t<0?n:0,n)?e[t]:void 0}function Mr(e,t,n){t=t.length?ct(t,(function(e){return Ms(e)?function(t){return fr(t,1===e.length?e[0]:e)}:e})):[jo];var r=-1;return t=ct(t,wt(Xi())),function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}(br(e,(function(e,n,i){return{criteria:ct(t,(function(t){return t(e)})),index:++r,value:e}})),(function(e,t){return function(e,t,n){var r=-1,i=e.criteria,a=t.criteria,s=i.length,o=n.length;for(;++r<s;){var d=mi(i[r],a[r]);if(d){if(r>=o)return d;var u=n[r];return d*("desc"==u?-1:1)}}return e.index-t.index}(e,t,n)}))}function Pr(e,t,n){for(var r=-1,i=t.length,a={};++r<i;){var s=t[r],o=fr(e,s);n(o,s)&&Gr(a,oi(s,e),o)}return a}function Ar(e,t,n,r){var i=r?It:yt,a=-1,s=t.length,o=e;for(e===t&&(t=hi(t)),n&&(o=ct(e,wt(n)));++a<s;)for(var d=0,u=t[a],l=n?n(u):u;(d=i(o,l,d,r))>-1;)o!==e&&Ke.call(o,d,1),Ke.call(e,d,1);return e}function Er(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==a){var a=i;sa(i)?Ke.call(e,i,1):Jr(e,i)}}return e}function kr(e,t){return e+Jt(ln()*(t-e+1))}function _r(e,t){var n="";if(!e||t<1||t>9007199254740991)return n;do{t%2&&(n+=e),(t=Jt(t/2))&&(e+=e)}while(t);return n}function Ur(e,t){return Oa(ma(e,t,jo),e+"")}function xr(e){return xn(Ro(e))}function Vr(e,t){var n=Ro(e);return La(n,Kn(t,0,n.length))}function Gr(e,t,n,r){if(!Ws(e))return e;for(var i=-1,a=(t=oi(t,e)).length,s=a-1,o=e;null!=o&&++i<a;){var d=Ta(t[i]),u=n;if("__proto__"===d||"constructor"===d||"prototype"===d)return e;if(i!=s){var l=o[d];void 0===(u=r?r(l,d,o):void 0)&&(u=Ws(l)?l:sa(t[i+1])?[]:{})}qn(o,d,u),o=o[d]}return e}var Wr=Sn?function(e,t){return Sn.set(e,t),e}:jo,qr=Dt?function(e,t){return Dt(e,"toString",{configurable:!0,enumerable:!1,value:qo(t),writable:!0})}:jo;function zr(e){return La(Ro(e))}function Hr(e,t,n){var i=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(n=n>a?a:n)<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var s=r(a);++i<a;)s[i]=e[i+t];return s}function jr(e,t){var n;return er(e,(function(e,r,i){return!(n=t(e,r,i))})),!!n}function Yr(e,t,n){var r=0,i=null==e?r:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;r<i;){var a=r+i>>>1,s=e[a];null!==s&&!Xs(s)&&(n?s<=t:s<t)?r=a+1:i=a}return i}return Zr(e,t,jo,n)}function Zr(e,t,n,r){var i=0,a=null==e?0:e.length;if(0===a)return 0;for(var s=(t=n(t))!=t,o=null===t,d=Xs(t),u=void 0===t;i<a;){var l=Jt((i+a)/2),f=n(e[l]),g=void 0!==f,c=null===f,m=f==f,p=Xs(f);if(s)var B=r||m;else B=u?m&&(r||g):o?m&&g&&(r||!c):d?m&&g&&!c&&(r||!p):!c&&!p&&(r?f<=t:f<t);B?i=l+1:a=l}return on(a,4294967294)}function Kr(e,t){for(var n=-1,r=e.length,i=0,a=[];++n<r;){var s=e[n],o=t?t(s):s;if(!n||!Cs(o,d)){var d=o;a[i++]=0===s?0:s}}return a}function Xr(e){return"number"==typeof e?e:Xs(e)?NaN:+e}function $r(e){if("string"==typeof e)return e;if(Ms(e))return ct(e,$r)+"";if(Xs(e))return bn?bn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Qr(e,t,n){var r=-1,i=ft,a=e.length,s=!0,o=[],d=o;if(n)s=!1,i=gt;else if(a>=200){var u=t?null:_i(e);if(u)return qt(u);s=!1,i=Mt,d=new kn}else d=t?[]:o;e:for(;++r<a;){var l=e[r],f=t?t(l):l;if(l=n||0!==l?l:0,s&&f==f){for(var g=d.length;g--;)if(d[g]===f)continue e;t&&d.push(f),o.push(l)}else i(d,f,n)||(d!==o&&d.push(f),o.push(l))}return o}function Jr(e,t){return null==(e=pa(e,t=oi(t,e)))||delete e[Ta(Ua(t))]}function ei(e,t,n,r){return Gr(e,t,n(fr(e,t)),r)}function ti(e,t,n,r){for(var i=e.length,a=r?i:-1;(r?a--:++a<i)&&t(e[a],a,e););return n?Hr(e,r?0:a,r?a+1:i):Hr(e,r?a+1:0,r?i:a)}function ni(e,t){var n=e;return n instanceof Mn&&(n=n.value()),pt(t,(function(e,t){return t.func.apply(t.thisArg,mt([e],t.args))}),n)}function ri(e,t,n){var i=e.length;if(i<2)return i?Qr(e[0]):[];for(var a=-1,s=r(i);++a<i;)for(var o=e[a],d=-1;++d<i;)d!=a&&(s[a]=Jn(s[a]||o,e[d],t,n));return Qr(ar(s,1),t,n)}function ii(e,t,n){for(var r=-1,i=e.length,a=t.length,s={};++r<i;){var o=r<a?t[r]:void 0;n(s,e[r],o)}return s}function ai(e){return Es(e)?e:[]}function si(e){return"function"==typeof e?e:jo}function oi(e,t){return Ms(e)?e:da(e,t)?[e]:Na(so(e))}var di=Ur;function ui(e,t,n){var r=e.length;return n=void 0===n?r:n,!t&&n>=r?e:Hr(e,t,n)}var li=Kt||function(e){return Ye.clearTimeout(e)};function fi(e,t){if(t)return e.slice();var n=e.length,r=We?We(n):new e.constructor(n);return e.copy(r),r}function gi(e){var t=new e.constructor(e.byteLength);return new ke(t).set(new ke(e)),t}function ci(e,t){var n=t?gi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function mi(e,t){if(e!==t){var n=void 0!==e,r=null===e,i=e==e,a=Xs(e),s=void 0!==t,o=null===t,d=t==t,u=Xs(t);if(!o&&!u&&!a&&e>t||a&&s&&d&&!o&&!u||r&&s&&d||!n&&d||!i)return 1;if(!r&&!a&&!u&&e<t||u&&n&&i&&!r&&!a||o&&n&&i||!s&&i||!d)return-1}return 0}function pi(e,t,n,i){for(var a=-1,s=e.length,o=n.length,d=-1,u=t.length,l=sn(s-o,0),f=r(u+l),g=!i;++d<u;)f[d]=t[d];for(;++a<o;)(g||a<s)&&(f[n[a]]=e[a]);for(;l--;)f[d++]=e[a++];return f}function Bi(e,t,n,i){for(var a=-1,s=e.length,o=-1,d=n.length,u=-1,l=t.length,f=sn(s-d,0),g=r(f+l),c=!i;++a<f;)g[a]=e[a];for(var m=a;++u<l;)g[m+u]=t[u];for(;++o<d;)(c||a<s)&&(g[m+n[o]]=e[a++]);return g}function hi(e,t){var n=-1,i=e.length;for(t||(t=r(i));++n<i;)t[n]=e[n];return t}function Si(e,t,n,r){var i=!n;n||(n={});for(var a=-1,s=t.length;++a<s;){var o=t[a],d=r?r(n[o],e[o],o,n,e):void 0;void 0===d&&(d=e[o]),i?Yn(n,o,d):qn(n,o,d)}return n}function vi(e,t){return function(n,r){var i=Ms(n)?st:Hn,a=t?t():{};return i(n,e,Xi(r,2),a)}}function Oi(e){return Ur((function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,s&&oa(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),t=pe(t);++r<i;){var o=n[r];o&&e(t,o,r,a)}return t}))}function yi(e,t){return function(n,r){if(null==n)return n;if(!As(n))return e(n,r);for(var i=n.length,a=t?i:-1,s=pe(n);(t?a--:++a<i)&&!1!==r(s[a],a,s););return n}}function Ii(e){return function(t,n,r){for(var i=-1,a=pe(t),s=r(t),o=s.length;o--;){var d=s[e?o:++i];if(!1===n(a[d],d,a))break}return t}}function Li(e){return function(t){var n=xt(t=so(t))?jt(t):void 0,r=n?n[0]:t.charAt(0),i=n?ui(n,1).join(""):t.slice(1);return r[e]()+i}}function Ni(e){return function(t){return pt(Vo(Mo(t).replace(Me,"")),e,"")}}function Ti(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Rn(e.prototype),r=e.apply(n,t);return Ws(r)?r:n}}function Di(e){return function(t,n,r){var i=pe(t);if(!As(t)){var a=Xi(n,3);t=Oo(t),n=function(e){return a(i[e],e,i)}}var s=e(t,n,r);return s>-1?i[a?t[s]:s]:void 0}}function bi(e){return zi((function(t){var n=t.length,r=n,i=Fn.prototype.thru;for(e&&t.reverse();r--;){var s=t[r];if("function"!=typeof s)throw new Se(a);if(i&&!o&&"wrapper"==Zi(s))var o=new Fn([],!0)}for(r=o?r:n;++r<n;){var d=Zi(s=t[r]),u="wrapper"==d?Yi(s):void 0;o=u&&ua(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?o[Zi(u[0])].apply(o,u[3]):1==s.length&&ua(s)?o[d]():o.thru(s)}return function(){var e=arguments,r=e[0];if(o&&1==e.length&&Ms(r))return o.plant(r).value();for(var i=0,a=n?t[i].apply(this,e):r;++i<n;)a=t[i].call(this,a);return a}}))}function Ci(e,t,n,i,a,s,o,d,u,l){var f=128&t,g=1&t,c=2&t,m=24&t,p=512&t,B=c?void 0:Ti(e);return function h(){for(var S=arguments.length,v=r(S),O=S;O--;)v[O]=arguments[O];if(m)var y=Ki(h),I=Et(v,y);if(i&&(v=pi(v,i,a,m)),s&&(v=Bi(v,s,o,m)),S-=I,m&&S<l){var L=Wt(v,y);return Ei(e,t,Ci,h.placeholder,n,v,L,d,u,l-S)}var N=g?n:this,T=c?N[e]:e;return S=v.length,d?v=Ba(v,d):p&&S>1&&v.reverse(),f&&u<S&&(v.length=u),this&&this!==Ye&&this instanceof h&&(T=B||Ti(T)),T.apply(N,v)}}function Ri(e,t){return function(n,r){return function(e,t,n,r){return dr(e,(function(e,i,a){t(r,n(e),i,a)})),r}(n,e,t(r),{})}}function wi(e,t){return function(n,r){var i;if(void 0===n&&void 0===r)return t;if(void 0!==n&&(i=n),void 0!==r){if(void 0===i)return r;"string"==typeof n||"string"==typeof r?(n=$r(n),r=$r(r)):(n=Xr(n),r=Xr(r)),i=e(n,r)}return i}}function Fi(e){return zi((function(t){return t=ct(t,wt(Xi())),Ur((function(n){var r=this;return e(t,(function(e){return at(e,r,n)}))}))}))}function Mi(e,t){var n=(t=void 0===t?" ":$r(t)).length;if(n<2)return n?_r(t,e):t;var r=_r(t,Qt(e/Ht(t)));return xt(t)?ui(jt(r),0,e).join(""):r.slice(0,e)}function Pi(e){return function(t,n,i){return i&&"number"!=typeof i&&oa(t,n,i)&&(n=i=void 0),t=to(t),void 0===n?(n=t,t=0):n=to(n),function(e,t,n,i){for(var a=-1,s=sn(Qt((t-e)/(n||1)),0),o=r(s);s--;)o[i?s:++a]=e,e+=n;return o}(t,n,i=void 0===i?t<n?1:-1:to(i),e)}}function Ai(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=io(t),n=io(n)),e(t,n)}}function Ei(e,t,n,r,i,a,s,o,d,u){var l=8&t;t|=l?32:64,4&(t&=~(l?64:32))||(t&=-4);var f=[e,t,i,l?a:void 0,l?s:void 0,l?void 0:a,l?void 0:s,o,d,u],g=n.apply(void 0,f);return ua(e)&&Sa(g,f),g.placeholder=r,ya(g,e,t)}function ki(e){var t=me[e];return function(e,n){if(e=io(e),(n=null==n?0:on(no(n),292))&&nn(e)){var r=(so(e)+"e").split("e");return+((r=(so(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var _i=pn&&1/qt(new pn([,-0]))[1]==1/0?function(e){return new pn(e)}:$o;function Ui(e){return function(t){var n=na(t);return n==p?Vt(t):n==v?zt(t):function(e,t){return ct(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function xi(e,t,n,i,o,d,u,l){var f=2&t;if(!f&&"function"!=typeof e)throw new Se(a);var g=i?i.length:0;if(g||(t&=-97,i=o=void 0),u=void 0===u?u:sn(no(u),0),l=void 0===l?l:no(l),g-=o?o.length:0,64&t){var c=i,m=o;i=o=void 0}var p=f?void 0:Yi(e),B=[e,t,n,i,o,c,m,d,u,l];if(p&&function(e,t){var n=e[1],r=t[1],i=n|r,a=i<131,o=128==r&&8==n||128==r&&256==n&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!a&&!o)return e;1&r&&(e[2]=t[2],i|=1&n?0:4);var d=t[3];if(d){var u=e[3];e[3]=u?pi(u,d,t[4]):d,e[4]=u?Wt(e[3],s):t[4]}(d=t[5])&&(u=e[5],e[5]=u?Bi(u,d,t[6]):d,e[6]=u?Wt(e[5],s):t[6]);(d=t[7])&&(e[7]=d);128&r&&(e[8]=null==e[8]?t[8]:on(e[8],t[8]));null==e[9]&&(e[9]=t[9]);e[0]=t[0],e[1]=i}(B,p),e=B[0],t=B[1],n=B[2],i=B[3],o=B[4],!(l=B[9]=void 0===B[9]?f?0:e.length:sn(B[9]-g,0))&&24&t&&(t&=-25),t&&1!=t)h=8==t||16==t?function(e,t,n){var i=Ti(e);return function a(){for(var s=arguments.length,o=r(s),d=s,u=Ki(a);d--;)o[d]=arguments[d];var l=s<3&&o[0]!==u&&o[s-1]!==u?[]:Wt(o,u);if((s-=l.length)<n)return Ei(e,t,Ci,a.placeholder,void 0,o,l,void 0,void 0,n-s);var f=this&&this!==Ye&&this instanceof a?i:e;return at(f,this,o)}}(e,t,l):32!=t&&33!=t||o.length?Ci.apply(void 0,B):function(e,t,n,i){var a=1&t,s=Ti(e);return function t(){for(var o=-1,d=arguments.length,u=-1,l=i.length,f=r(l+d),g=this&&this!==Ye&&this instanceof t?s:e;++u<l;)f[u]=i[u];for(;d--;)f[u++]=arguments[++o];return at(g,a?n:this,f)}}(e,t,n,i);else var h=function(e,t,n){var r=1&t,i=Ti(e);return function t(){var a=this&&this!==Ye&&this instanceof t?i:e;return a.apply(r?n:this,arguments)}}(e,t,n);return ya((p?Wr:Sa)(h,B),e,t)}function Vi(e,t,n,r){return void 0===e||Cs(e,ye[n])&&!Ne.call(r,n)?t:e}function Gi(e,t,n,r,i,a){return Ws(e)&&Ws(t)&&(a.set(t,e),wr(e,t,void 0,Gi,a),a.delete(t)),e}function Wi(e){return js(e)?void 0:e}function qi(e,t,n,r,i,a){var s=1&n,o=e.length,d=t.length;if(o!=d&&!(s&&d>o))return!1;var u=a.get(e),l=a.get(t);if(u&&l)return u==t&&l==e;var f=-1,g=!0,c=2&n?new kn:void 0;for(a.set(e,t),a.set(t,e);++f<o;){var m=e[f],p=t[f];if(r)var B=s?r(p,m,f,t,e,a):r(m,p,f,e,t,a);if(void 0!==B){if(B)continue;g=!1;break}if(c){if(!ht(t,(function(e,t){if(!Mt(c,t)&&(m===e||i(m,e,n,r,a)))return c.push(t)}))){g=!1;break}}else if(m!==p&&!i(m,p,n,r,a)){g=!1;break}}return a.delete(e),a.delete(t),g}function zi(e){return Oa(ma(e,void 0,Pa),e+"")}function Hi(e){return gr(e,Oo,ea)}function ji(e){return gr(e,yo,ta)}var Yi=Sn?function(e){return Sn.get(e)}:$o;function Zi(e){for(var t=e.name+"",n=vn[t],r=Ne.call(vn,t)?n.length:0;r--;){var i=n[r],a=i.func;if(null==a||a==e)return i.name}return t}function Ki(e){return(Ne.call(Cn,"placeholder")?Cn:e).placeholder}function Xi(){var e=Cn.iteratee||Yo;return e=e===Yo?Lr:e,arguments.length?e(arguments[0],arguments[1]):e}function $i(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function Qi(e){for(var t=Oo(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,ga(i)]}return t}function Ji(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return Ir(n)?n:void 0}var ea=en?function(e){return null==e?[]:(e=pe(e),lt(en(e),(function(t){return Ze.call(e,t)})))}:id,ta=en?function(e){for(var t=[];e;)mt(t,ea(e)),e=He(e);return t}:id,na=cr;function ra(e,t,n){for(var r=-1,i=(t=oi(t,e)).length,a=!1;++r<i;){var s=Ta(t[r]);if(!(a=null!=e&&n(e,s)))break;e=e[s]}return a||++r!=i?a:!!(i=null==e?0:e.length)&&Gs(i)&&sa(s,i)&&(Ms(e)||Fs(e))}function ia(e){return"function"!=typeof e.constructor||fa(e)?{}:Rn(He(e))}function aa(e){return Ms(e)||Fs(e)||!!($e&&e&&e[$e])}function sa(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&de.test(e))&&e>-1&&e%1==0&&e<t}function oa(e,t,n){if(!Ws(n))return!1;var r=typeof t;return!!("number"==r?As(n)&&sa(t,n.length):"string"==r&&t in n)&&Cs(n[t],e)}function da(e,t){if(Ms(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!Xs(e))||(z.test(e)||!q.test(e)||null!=t&&e in pe(t))}function ua(e){var t=Zi(e),n=Cn[t];if("function"!=typeof n||!(t in Mn.prototype))return!1;if(e===n)return!0;var r=Yi(n);return!!r&&e===r[0]}(gn&&na(new gn(new ArrayBuffer(1)))!=N||cn&&na(new cn)!=p||mn&&"[object Promise]"!=na(mn.resolve())||pn&&na(new pn)!=v||Bn&&na(new Bn)!=I)&&(na=function(e){var t=cr(e),n=t==h?e.constructor:void 0,r=n?Da(n):"";if(r)switch(r){case On:return N;case yn:return p;case In:return"[object Promise]";case Ln:return v;case Nn:return I}return t});var la=Ie?xs:ad;function fa(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||ye)}function ga(e){return e==e&&!Ws(e)}function ca(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in pe(n)))}}function ma(e,t,n){return t=sn(void 0===t?e.length-1:t,0),function(){for(var i=arguments,a=-1,s=sn(i.length-t,0),o=r(s);++a<s;)o[a]=i[t+a];a=-1;for(var d=r(t+1);++a<t;)d[a]=i[a];return d[t]=n(o),at(e,this,d)}}function pa(e,t){return t.length<2?e:fr(e,Hr(t,0,-1))}function Ba(e,t){for(var n=e.length,r=on(t.length,n),i=hi(e);r--;){var a=t[r];e[r]=sa(a,n)?i[a]:void 0}return e}function ha(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Sa=Ia(Wr),va=$t||function(e,t){return Ye.setTimeout(e,t)},Oa=Ia(qr);function ya(e,t,n){var r=t+"";return Oa(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace($,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return ot(o,(function(n){var r="_."+n[0];t&n[1]&&!ft(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(Q);return t?t[1].split(J):[]}(r),n)))}function Ia(e){var t=0,n=0;return function(){var r=dn(),i=16-(r-n);if(n=r,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function La(e,t){var n=-1,r=e.length,i=r-1;for(t=void 0===t?r:t;++n<t;){var a=kr(n,i),s=e[a];e[a]=e[n],e[n]=s}return e.length=t,e}var Na=function(e){var t=Is(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(H,(function(e,n,r,i){t.push(r?i.replace(te,"$1"):n||e)})),t}));function Ta(e){if("string"==typeof e||Xs(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Da(e){if(null!=e){try{return Le.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function ba(e){if(e instanceof Mn)return e.clone();var t=new Fn(e.__wrapped__,e.__chain__);return t.__actions__=hi(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Ca=Ur((function(e,t){return Es(e)?Jn(e,ar(t,1,Es,!0)):[]})),Ra=Ur((function(e,t){var n=Ua(t);return Es(n)&&(n=void 0),Es(e)?Jn(e,ar(t,1,Es,!0),Xi(n,2)):[]})),wa=Ur((function(e,t){var n=Ua(t);return Es(n)&&(n=void 0),Es(e)?Jn(e,ar(t,1,Es,!0),void 0,n):[]}));function Fa(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:no(n);return i<0&&(i=sn(r+i,0)),Ot(e,Xi(t,3),i)}function Ma(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r-1;return void 0!==n&&(i=no(n),i=n<0?sn(r+i,0):on(i,r-1)),Ot(e,Xi(t,3),i,!0)}function Pa(e){return(null==e?0:e.length)?ar(e,1):[]}function Aa(e){return e&&e.length?e[0]:void 0}var Ea=Ur((function(e){var t=ct(e,ai);return t.length&&t[0]===e[0]?hr(t):[]})),ka=Ur((function(e){var t=Ua(e),n=ct(e,ai);return t===Ua(n)?t=void 0:n.pop(),n.length&&n[0]===e[0]?hr(n,Xi(t,2)):[]})),_a=Ur((function(e){var t=Ua(e),n=ct(e,ai);return(t="function"==typeof t?t:void 0)&&n.pop(),n.length&&n[0]===e[0]?hr(n,void 0,t):[]}));function Ua(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}var xa=Ur(Va);function Va(e,t){return e&&e.length&&t&&t.length?Ar(e,t):e}var Ga=zi((function(e,t){var n=null==e?0:e.length,r=Zn(e,t);return Er(e,ct(t,(function(e){return sa(e,n)?+e:e})).sort(mi)),r}));function Wa(e){return null==e?e:fn.call(e)}var qa=Ur((function(e){return Qr(ar(e,1,Es,!0))})),za=Ur((function(e){var t=Ua(e);return Es(t)&&(t=void 0),Qr(ar(e,1,Es,!0),Xi(t,2))})),Ha=Ur((function(e){var t=Ua(e);return t="function"==typeof t?t:void 0,Qr(ar(e,1,Es,!0),void 0,t)}));function ja(e){if(!e||!e.length)return[];var t=0;return e=lt(e,(function(e){if(Es(e))return t=sn(e.length,t),!0})),Rt(t,(function(t){return ct(e,Tt(t))}))}function Ya(e,t){if(!e||!e.length)return[];var n=ja(e);return null==t?n:ct(n,(function(e){return at(t,void 0,e)}))}var Za=Ur((function(e,t){return Es(e)?Jn(e,t):[]})),Ka=Ur((function(e){return ri(lt(e,Es))})),Xa=Ur((function(e){var t=Ua(e);return Es(t)&&(t=void 0),ri(lt(e,Es),Xi(t,2))})),$a=Ur((function(e){var t=Ua(e);return t="function"==typeof t?t:void 0,ri(lt(e,Es),void 0,t)})),Qa=Ur(ja);var Ja=Ur((function(e){var t=e.length,n=t>1?e[t-1]:void 0;return n="function"==typeof n?(e.pop(),n):void 0,Ya(e,n)}));function es(e){var t=Cn(e);return t.__chain__=!0,t}function ts(e,t){return t(e)}var ns=zi((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,i=function(t){return Zn(t,e)};return!(t>1||this.__actions__.length)&&r instanceof Mn&&sa(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:ts,args:[i],thisArg:void 0}),new Fn(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(void 0),e}))):this.thru(i)}));var rs=vi((function(e,t,n){Ne.call(e,n)?++e[n]:Yn(e,n,1)}));var is=Di(Fa),as=Di(Ma);function ss(e,t){return(Ms(e)?ot:er)(e,Xi(t,3))}function os(e,t){return(Ms(e)?dt:tr)(e,Xi(t,3))}var ds=vi((function(e,t,n){Ne.call(e,n)?e[n].push(t):Yn(e,n,[t])}));var us=Ur((function(e,t,n){var i=-1,a="function"==typeof t,s=As(e)?r(e.length):[];return er(e,(function(e){s[++i]=a?at(t,e,n):Sr(e,t,n)})),s})),ls=vi((function(e,t,n){Yn(e,n,t)}));function fs(e,t){return(Ms(e)?ct:br)(e,Xi(t,3))}var gs=vi((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]}));var cs=Ur((function(e,t){if(null==e)return[];var n=t.length;return n>1&&oa(e,t[0],t[1])?t=[]:n>2&&oa(t[0],t[1],t[2])&&(t=[t[0]]),Mr(e,ar(t,1),[])})),ms=Xt||function(){return Ye.Date.now()};function ps(e,t,n){return t=n?void 0:t,xi(e,128,void 0,void 0,void 0,void 0,t=e&&null==t?e.length:t)}function Bs(e,t){var n;if("function"!=typeof t)throw new Se(a);return e=no(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=void 0),n}}var hs=Ur((function(e,t,n){var r=1;if(n.length){var i=Wt(n,Ki(hs));r|=32}return xi(e,r,t,n,i)})),Ss=Ur((function(e,t,n){var r=3;if(n.length){var i=Wt(n,Ki(Ss));r|=32}return xi(t,r,e,n,i)}));function vs(e,t,n){var r,i,s,o,d,u,l=0,f=!1,g=!1,c=!0;if("function"!=typeof e)throw new Se(a);function m(t){var n=r,a=i;return r=i=void 0,l=t,o=e.apply(a,n)}function p(e){return l=e,d=va(h,t),f?m(e):o}function B(e){var n=e-u;return void 0===u||n>=t||n<0||g&&e-l>=s}function h(){var e=ms();if(B(e))return S(e);d=va(h,function(e){var n=t-(e-u);return g?on(n,s-(e-l)):n}(e))}function S(e){return d=void 0,c&&r?m(e):(r=i=void 0,o)}function v(){var e=ms(),n=B(e);if(r=arguments,i=this,u=e,n){if(void 0===d)return p(u);if(g)return li(d),d=va(h,t),m(u)}return void 0===d&&(d=va(h,t)),o}return t=io(t)||0,Ws(n)&&(f=!!n.leading,s=(g="maxWait"in n)?sn(io(n.maxWait)||0,t):s,c="trailing"in n?!!n.trailing:c),v.cancel=function(){void 0!==d&&li(d),l=0,r=u=i=d=void 0},v.flush=function(){return void 0===d?o:S(ms())},v}var Os=Ur((function(e,t){return Qn(e,1,t)})),ys=Ur((function(e,t,n){return Qn(e,io(t)||0,n)}));function Is(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Se(a);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var s=e.apply(this,r);return n.cache=a.set(i,s)||a,s};return n.cache=new(Is.Cache||En),n}function Ls(e){if("function"!=typeof e)throw new Se(a);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Is.Cache=En;var Ns=di((function(e,t){var n=(t=1==t.length&&Ms(t[0])?ct(t[0],wt(Xi())):ct(ar(t,1),wt(Xi()))).length;return Ur((function(r){for(var i=-1,a=on(r.length,n);++i<a;)r[i]=t[i].call(this,r[i]);return at(e,this,r)}))})),Ts=Ur((function(e,t){return xi(e,32,void 0,t,Wt(t,Ki(Ts)))})),Ds=Ur((function(e,t){return xi(e,64,void 0,t,Wt(t,Ki(Ds)))})),bs=zi((function(e,t){return xi(e,256,void 0,void 0,void 0,t)}));function Cs(e,t){return e===t||e!=e&&t!=t}var Rs=Ai(mr),ws=Ai((function(e,t){return e>=t})),Fs=vr(function(){return arguments}())?vr:function(e){return qs(e)&&Ne.call(e,"callee")&&!Ze.call(e,"callee")},Ms=r.isArray,Ps=Je?wt(Je):function(e){return qs(e)&&cr(e)==L};function As(e){return null!=e&&Gs(e.length)&&!xs(e)}function Es(e){return qs(e)&&As(e)}var ks=tn||ad,_s=et?wt(et):function(e){return qs(e)&&cr(e)==f};function Us(e){if(!qs(e))return!1;var t=cr(e);return t==g||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!js(e)}function xs(e){if(!Ws(e))return!1;var t=cr(e);return t==c||t==m||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Vs(e){return"number"==typeof e&&e==no(e)}function Gs(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}function Ws(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function qs(e){return null!=e&&"object"==typeof e}var zs=tt?wt(tt):function(e){return qs(e)&&na(e)==p};function Hs(e){return"number"==typeof e||qs(e)&&cr(e)==B}function js(e){if(!qs(e)||cr(e)!=h)return!1;var t=He(e);if(null===t)return!0;var n=Ne.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Le.call(n)==Ce}var Ys=nt?wt(nt):function(e){return qs(e)&&cr(e)==S};var Zs=rt?wt(rt):function(e){return qs(e)&&na(e)==v};function Ks(e){return"string"==typeof e||!Ms(e)&&qs(e)&&cr(e)==O}function Xs(e){return"symbol"==typeof e||qs(e)&&cr(e)==y}var $s=it?wt(it):function(e){return qs(e)&&Gs(e.length)&&!!Ve[cr(e)]};var Qs=Ai(Dr),Js=Ai((function(e,t){return e<=t}));function eo(e){if(!e)return[];if(As(e))return Ks(e)?jt(e):hi(e);if(Qe&&e[Qe])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Qe]());var t=na(e);return(t==p?Vt:t==v?qt:Ro)(e)}function to(e){return e?(e=io(e))===1/0||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function no(e){var t=to(e),n=t%1;return t==t?n?t-n:t:0}function ro(e){return e?Kn(no(e),0,4294967295):0}function io(e){if("number"==typeof e)return e;if(Xs(e))return NaN;if(Ws(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Ws(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(Z,"");var n=ae.test(e);return n||oe.test(e)?ze(e.slice(2),n?2:8):ie.test(e)?NaN:+e}function ao(e){return Si(e,yo(e))}function so(e){return null==e?"":$r(e)}var oo=Oi((function(e,t){if(fa(t)||As(t))Si(t,Oo(t),e);else for(var n in t)Ne.call(t,n)&&qn(e,n,t[n])})),uo=Oi((function(e,t){Si(t,yo(t),e)})),lo=Oi((function(e,t,n,r){Si(t,yo(t),e,r)})),fo=Oi((function(e,t,n,r){Si(t,Oo(t),e,r)})),go=zi(Zn);var co=Ur((function(e,t){e=pe(e);var n=-1,r=t.length,i=r>2?t[2]:void 0;for(i&&oa(t[0],t[1],i)&&(r=1);++n<r;)for(var a=t[n],s=yo(a),o=-1,d=s.length;++o<d;){var u=s[o],l=e[u];(void 0===l||Cs(l,ye[u])&&!Ne.call(e,u))&&(e[u]=a[u])}return e})),mo=Ur((function(e){return e.push(void 0,Gi),at(Lo,void 0,e)}));function po(e,t,n){var r=null==e?void 0:fr(e,t);return void 0===r?n:r}function Bo(e,t){return null!=e&&ra(e,t,Br)}var ho=Ri((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=be.call(t)),e[t]=n}),qo(jo)),So=Ri((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=be.call(t)),Ne.call(e,t)?e[t].push(n):e[t]=[n]}),Xi),vo=Ur(Sr);function Oo(e){return As(e)?Un(e):Nr(e)}function yo(e){return As(e)?Un(e,!0):Tr(e)}var Io=Oi((function(e,t,n){wr(e,t,n)})),Lo=Oi((function(e,t,n,r){wr(e,t,n,r)})),No=zi((function(e,t){var n={};if(null==e)return n;var r=!1;t=ct(t,(function(t){return t=oi(t,e),r||(r=t.length>1),t})),Si(e,ji(e),n),r&&(n=Xn(n,7,Wi));for(var i=t.length;i--;)Jr(n,t[i]);return n}));var To=zi((function(e,t){return null==e?{}:function(e,t){return Pr(e,t,(function(t,n){return Bo(e,n)}))}(e,t)}));function Do(e,t){if(null==e)return{};var n=ct(ji(e),(function(e){return[e]}));return t=Xi(t),Pr(e,n,(function(e,n){return t(e,n[0])}))}var bo=Ui(Oo),Co=Ui(yo);function Ro(e){return null==e?[]:Ft(e,Oo(e))}var wo=Ni((function(e,t,n){return t=t.toLowerCase(),e+(n?Fo(t):t)}));function Fo(e){return xo(so(e).toLowerCase())}function Mo(e){return(e=so(e))&&e.replace(ue,kt).replace(Pe,"")}var Po=Ni((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ao=Ni((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Eo=Li("toLowerCase");var ko=Ni((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}));var _o=Ni((function(e,t,n){return e+(n?" ":"")+xo(t)}));var Uo=Ni((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),xo=Li("toUpperCase");function Vo(e,t,n){return e=so(e),void 0===(t=n?void 0:t)?function(e){return _e.test(e)}(e)?function(e){return e.match(Ee)||[]}(e):function(e){return e.match(ee)||[]}(e):e.match(t)||[]}var Go=Ur((function(e,t){try{return at(e,void 0,t)}catch(e){return Us(e)?e:new ge(e)}})),Wo=zi((function(e,t){return ot(t,(function(t){t=Ta(t),Yn(e,t,hs(e[t],e))})),e}));function qo(e){return function(){return e}}var zo=bi(),Ho=bi(!0);function jo(e){return e}function Yo(e){return Lr("function"==typeof e?e:Xn(e,1))}var Zo=Ur((function(e,t){return function(n){return Sr(n,e,t)}})),Ko=Ur((function(e,t){return function(n){return Sr(e,n,t)}}));function Xo(e,t,n){var r=Oo(t),i=lr(t,r);null!=n||Ws(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=lr(t,Oo(t)));var a=!(Ws(n)&&"chain"in n&&!n.chain),s=xs(e);return ot(i,(function(n){var r=t[n];e[n]=r,s&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__),i=n.__actions__=hi(this.__actions__);return i.push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,mt([this.value()],arguments))})})),e}function $o(){}var Qo=Fi(ct),Jo=Fi(ut),ed=Fi(ht);function td(e){return da(e)?Tt(Ta(e)):function(e){return function(t){return fr(t,e)}}(e)}var nd=Pi(),rd=Pi(!0);function id(){return[]}function ad(){return!1}var sd=wi((function(e,t){return e+t}),0),od=ki("ceil"),dd=wi((function(e,t){return e/t}),1),ud=ki("floor");var ld,fd=wi((function(e,t){return e*t}),1),gd=ki("round"),cd=wi((function(e,t){return e-t}),0);return Cn.after=function(e,t){if("function"!=typeof t)throw new Se(a);return e=no(e),function(){if(--e<1)return t.apply(this,arguments)}},Cn.ary=ps,Cn.assign=oo,Cn.assignIn=uo,Cn.assignInWith=lo,Cn.assignWith=fo,Cn.at=go,Cn.before=Bs,Cn.bind=hs,Cn.bindAll=Wo,Cn.bindKey=Ss,Cn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ms(e)?e:[e]},Cn.chain=es,Cn.chunk=function(e,t,n){t=(n?oa(e,t,n):void 0===t)?1:sn(no(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var a=0,s=0,o=r(Qt(i/t));a<i;)o[s++]=Hr(e,a,a+=t);return o},Cn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,i=[];++t<n;){var a=e[t];a&&(i[r++]=a)}return i},Cn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=r(e-1),n=arguments[0],i=e;i--;)t[i-1]=arguments[i];return mt(Ms(n)?hi(n):[n],ar(t,1))},Cn.cond=function(e){var t=null==e?0:e.length,n=Xi();return e=t?ct(e,(function(e){if("function"!=typeof e[1])throw new Se(a);return[n(e[0]),e[1]]})):[],Ur((function(n){for(var r=-1;++r<t;){var i=e[r];if(at(i[0],this,n))return at(i[1],this,n)}}))},Cn.conforms=function(e){return function(e){var t=Oo(e);return function(n){return $n(n,e,t)}}(Xn(e,1))},Cn.constant=qo,Cn.countBy=rs,Cn.create=function(e,t){var n=Rn(e);return null==t?n:jn(n,t)},Cn.curry=function e(t,n,r){var i=xi(t,8,void 0,void 0,void 0,void 0,void 0,n=r?void 0:n);return i.placeholder=e.placeholder,i},Cn.curryRight=function e(t,n,r){var i=xi(t,16,void 0,void 0,void 0,void 0,void 0,n=r?void 0:n);return i.placeholder=e.placeholder,i},Cn.debounce=vs,Cn.defaults=co,Cn.defaultsDeep=mo,Cn.defer=Os,Cn.delay=ys,Cn.difference=Ca,Cn.differenceBy=Ra,Cn.differenceWith=wa,Cn.drop=function(e,t,n){var r=null==e?0:e.length;return r?Hr(e,(t=n||void 0===t?1:no(t))<0?0:t,r):[]},Cn.dropRight=function(e,t,n){var r=null==e?0:e.length;return r?Hr(e,0,(t=r-(t=n||void 0===t?1:no(t)))<0?0:t):[]},Cn.dropRightWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3),!0,!0):[]},Cn.dropWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3),!0):[]},Cn.fill=function(e,t,n,r){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&oa(e,t,n)&&(n=0,r=i),function(e,t,n,r){var i=e.length;for((n=no(n))<0&&(n=-n>i?0:i+n),(r=void 0===r||r>i?i:no(r))<0&&(r+=i),r=n>r?0:ro(r);n<r;)e[n++]=t;return e}(e,t,n,r)):[]},Cn.filter=function(e,t){return(Ms(e)?lt:ir)(e,Xi(t,3))},Cn.flatMap=function(e,t){return ar(fs(e,t),1)},Cn.flatMapDeep=function(e,t){return ar(fs(e,t),1/0)},Cn.flatMapDepth=function(e,t,n){return n=void 0===n?1:no(n),ar(fs(e,t),n)},Cn.flatten=Pa,Cn.flattenDeep=function(e){return(null==e?0:e.length)?ar(e,1/0):[]},Cn.flattenDepth=function(e,t){return(null==e?0:e.length)?ar(e,t=void 0===t?1:no(t)):[]},Cn.flip=function(e){return xi(e,512)},Cn.flow=zo,Cn.flowRight=Ho,Cn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var i=e[t];r[i[0]]=i[1]}return r},Cn.functions=function(e){return null==e?[]:lr(e,Oo(e))},Cn.functionsIn=function(e){return null==e?[]:lr(e,yo(e))},Cn.groupBy=ds,Cn.initial=function(e){return(null==e?0:e.length)?Hr(e,0,-1):[]},Cn.intersection=Ea,Cn.intersectionBy=ka,Cn.intersectionWith=_a,Cn.invert=ho,Cn.invertBy=So,Cn.invokeMap=us,Cn.iteratee=Yo,Cn.keyBy=ls,Cn.keys=Oo,Cn.keysIn=yo,Cn.map=fs,Cn.mapKeys=function(e,t){var n={};return t=Xi(t,3),dr(e,(function(e,r,i){Yn(n,t(e,r,i),e)})),n},Cn.mapValues=function(e,t){var n={};return t=Xi(t,3),dr(e,(function(e,r,i){Yn(n,r,t(e,r,i))})),n},Cn.matches=function(e){return Cr(Xn(e,1))},Cn.matchesProperty=function(e,t){return Rr(e,Xn(t,1))},Cn.memoize=Is,Cn.merge=Io,Cn.mergeWith=Lo,Cn.method=Zo,Cn.methodOf=Ko,Cn.mixin=Xo,Cn.negate=Ls,Cn.nthArg=function(e){return e=no(e),Ur((function(t){return Fr(t,e)}))},Cn.omit=No,Cn.omitBy=function(e,t){return Do(e,Ls(Xi(t)))},Cn.once=function(e){return Bs(2,e)},Cn.orderBy=function(e,t,n,r){return null==e?[]:(Ms(t)||(t=null==t?[]:[t]),Ms(n=r?void 0:n)||(n=null==n?[]:[n]),Mr(e,t,n))},Cn.over=Qo,Cn.overArgs=Ns,Cn.overEvery=Jo,Cn.overSome=ed,Cn.partial=Ts,Cn.partialRight=Ds,Cn.partition=gs,Cn.pick=To,Cn.pickBy=Do,Cn.property=td,Cn.propertyOf=function(e){return function(t){return null==e?void 0:fr(e,t)}},Cn.pull=xa,Cn.pullAll=Va,Cn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Ar(e,t,Xi(n,2)):e},Cn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Ar(e,t,void 0,n):e},Cn.pullAt=Ga,Cn.range=nd,Cn.rangeRight=rd,Cn.rearg=bs,Cn.reject=function(e,t){return(Ms(e)?lt:ir)(e,Ls(Xi(t,3)))},Cn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,i=[],a=e.length;for(t=Xi(t,3);++r<a;){var s=e[r];t(s,r,e)&&(n.push(s),i.push(r))}return Er(e,i),n},Cn.rest=function(e,t){if("function"!=typeof e)throw new Se(a);return Ur(e,t=void 0===t?t:no(t))},Cn.reverse=Wa,Cn.sampleSize=function(e,t,n){return t=(n?oa(e,t,n):void 0===t)?1:no(t),(Ms(e)?Vn:Vr)(e,t)},Cn.set=function(e,t,n){return null==e?e:Gr(e,t,n)},Cn.setWith=function(e,t,n,r){return r="function"==typeof r?r:void 0,null==e?e:Gr(e,t,n,r)},Cn.shuffle=function(e){return(Ms(e)?Gn:zr)(e)},Cn.slice=function(e,t,n){var r=null==e?0:e.length;return r?(n&&"number"!=typeof n&&oa(e,t,n)?(t=0,n=r):(t=null==t?0:no(t),n=void 0===n?r:no(n)),Hr(e,t,n)):[]},Cn.sortBy=cs,Cn.sortedUniq=function(e){return e&&e.length?Kr(e):[]},Cn.sortedUniqBy=function(e,t){return e&&e.length?Kr(e,Xi(t,2)):[]},Cn.split=function(e,t,n){return n&&"number"!=typeof n&&oa(e,t,n)&&(t=n=void 0),(n=void 0===n?4294967295:n>>>0)?(e=so(e))&&("string"==typeof t||null!=t&&!Ys(t))&&!(t=$r(t))&&xt(e)?ui(jt(e),0,n):e.split(t,n):[]},Cn.spread=function(e,t){if("function"!=typeof e)throw new Se(a);return t=null==t?0:sn(no(t),0),Ur((function(n){var r=n[t],i=ui(n,0,t);return r&&mt(i,r),at(e,this,i)}))},Cn.tail=function(e){var t=null==e?0:e.length;return t?Hr(e,1,t):[]},Cn.take=function(e,t,n){return e&&e.length?Hr(e,0,(t=n||void 0===t?1:no(t))<0?0:t):[]},Cn.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?Hr(e,(t=r-(t=n||void 0===t?1:no(t)))<0?0:t,r):[]},Cn.takeRightWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3),!1,!0):[]},Cn.takeWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3)):[]},Cn.tap=function(e,t){return t(e),e},Cn.throttle=function(e,t,n){var r=!0,i=!0;if("function"!=typeof e)throw new Se(a);return Ws(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),vs(e,t,{leading:r,maxWait:t,trailing:i})},Cn.thru=ts,Cn.toArray=eo,Cn.toPairs=bo,Cn.toPairsIn=Co,Cn.toPath=function(e){return Ms(e)?ct(e,Ta):Xs(e)?[e]:hi(Na(so(e)))},Cn.toPlainObject=ao,Cn.transform=function(e,t,n){var r=Ms(e),i=r||ks(e)||$s(e);if(t=Xi(t,4),null==n){var a=e&&e.constructor;n=i?r?new a:[]:Ws(e)&&xs(a)?Rn(He(e)):{}}return(i?ot:dr)(e,(function(e,r,i){return t(n,e,r,i)})),n},Cn.unary=function(e){return ps(e,1)},Cn.union=qa,Cn.unionBy=za,Cn.unionWith=Ha,Cn.uniq=function(e){return e&&e.length?Qr(e):[]},Cn.uniqBy=function(e,t){return e&&e.length?Qr(e,Xi(t,2)):[]},Cn.uniqWith=function(e,t){return t="function"==typeof t?t:void 0,e&&e.length?Qr(e,void 0,t):[]},Cn.unset=function(e,t){return null==e||Jr(e,t)},Cn.unzip=ja,Cn.unzipWith=Ya,Cn.update=function(e,t,n){return null==e?e:ei(e,t,si(n))},Cn.updateWith=function(e,t,n,r){return r="function"==typeof r?r:void 0,null==e?e:ei(e,t,si(n),r)},Cn.values=Ro,Cn.valuesIn=function(e){return null==e?[]:Ft(e,yo(e))},Cn.without=Za,Cn.words=Vo,Cn.wrap=function(e,t){return Ts(si(t),e)},Cn.xor=Ka,Cn.xorBy=Xa,Cn.xorWith=$a,Cn.zip=Qa,Cn.zipObject=function(e,t){return ii(e||[],t||[],qn)},Cn.zipObjectDeep=function(e,t){return ii(e||[],t||[],Gr)},Cn.zipWith=Ja,Cn.entries=bo,Cn.entriesIn=Co,Cn.extend=uo,Cn.extendWith=lo,Xo(Cn,Cn),Cn.add=sd,Cn.attempt=Go,Cn.camelCase=wo,Cn.capitalize=Fo,Cn.ceil=od,Cn.clamp=function(e,t,n){return void 0===n&&(n=t,t=void 0),void 0!==n&&(n=(n=io(n))==n?n:0),void 0!==t&&(t=(t=io(t))==t?t:0),Kn(io(e),t,n)},Cn.clone=function(e){return Xn(e,4)},Cn.cloneDeep=function(e){return Xn(e,5)},Cn.cloneDeepWith=function(e,t){return Xn(e,5,t="function"==typeof t?t:void 0)},Cn.cloneWith=function(e,t){return Xn(e,4,t="function"==typeof t?t:void 0)},Cn.conformsTo=function(e,t){return null==t||$n(e,t,Oo(t))},Cn.deburr=Mo,Cn.defaultTo=function(e,t){return null==e||e!=e?t:e},Cn.divide=dd,Cn.endsWith=function(e,t,n){e=so(e),t=$r(t);var r=e.length,i=n=void 0===n?r:Kn(no(n),0,r);return(n-=t.length)>=0&&e.slice(n,i)==t},Cn.eq=Cs,Cn.escape=function(e){return(e=so(e))&&x.test(e)?e.replace(_,_t):e},Cn.escapeRegExp=function(e){return(e=so(e))&&Y.test(e)?e.replace(j,"\\$&"):e},Cn.every=function(e,t,n){var r=Ms(e)?ut:nr;return n&&oa(e,t,n)&&(t=void 0),r(e,Xi(t,3))},Cn.find=is,Cn.findIndex=Fa,Cn.findKey=function(e,t){return vt(e,Xi(t,3),dr)},Cn.findLast=as,Cn.findLastIndex=Ma,Cn.findLastKey=function(e,t){return vt(e,Xi(t,3),ur)},Cn.floor=ud,Cn.forEach=ss,Cn.forEachRight=os,Cn.forIn=function(e,t){return null==e?e:sr(e,Xi(t,3),yo)},Cn.forInRight=function(e,t){return null==e?e:or(e,Xi(t,3),yo)},Cn.forOwn=function(e,t){return e&&dr(e,Xi(t,3))},Cn.forOwnRight=function(e,t){return e&&ur(e,Xi(t,3))},Cn.get=po,Cn.gt=Rs,Cn.gte=ws,Cn.has=function(e,t){return null!=e&&ra(e,t,pr)},Cn.hasIn=Bo,Cn.head=Aa,Cn.identity=jo,Cn.includes=function(e,t,n,r){e=As(e)?e:Ro(e),n=n&&!r?no(n):0;var i=e.length;return n<0&&(n=sn(i+n,0)),Ks(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&yt(e,t,n)>-1},Cn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:no(n);return i<0&&(i=sn(r+i,0)),yt(e,t,i)},Cn.inRange=function(e,t,n){return t=to(t),void 0===n?(n=t,t=0):n=to(n),function(e,t,n){return e>=on(t,n)&&e<sn(t,n)}(e=io(e),t,n)},Cn.invoke=vo,Cn.isArguments=Fs,Cn.isArray=Ms,Cn.isArrayBuffer=Ps,Cn.isArrayLike=As,Cn.isArrayLikeObject=Es,Cn.isBoolean=function(e){return!0===e||!1===e||qs(e)&&cr(e)==l},Cn.isBuffer=ks,Cn.isDate=_s,Cn.isElement=function(e){return qs(e)&&1===e.nodeType&&!js(e)},Cn.isEmpty=function(e){if(null==e)return!0;if(As(e)&&(Ms(e)||"string"==typeof e||"function"==typeof e.splice||ks(e)||$s(e)||Fs(e)))return!e.length;var t=na(e);if(t==p||t==v)return!e.size;if(fa(e))return!Nr(e).length;for(var n in e)if(Ne.call(e,n))return!1;return!0},Cn.isEqual=function(e,t){return Or(e,t)},Cn.isEqualWith=function(e,t,n){var r=(n="function"==typeof n?n:void 0)?n(e,t):void 0;return void 0===r?Or(e,t,void 0,n):!!r},Cn.isError=Us,Cn.isFinite=function(e){return"number"==typeof e&&nn(e)},Cn.isFunction=xs,Cn.isInteger=Vs,Cn.isLength=Gs,Cn.isMap=zs,Cn.isMatch=function(e,t){return e===t||yr(e,t,Qi(t))},Cn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:void 0,yr(e,t,Qi(t),n)},Cn.isNaN=function(e){return Hs(e)&&e!=+e},Cn.isNative=function(e){if(la(e))throw new ge("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ir(e)},Cn.isNil=function(e){return null==e},Cn.isNull=function(e){return null===e},Cn.isNumber=Hs,Cn.isObject=Ws,Cn.isObjectLike=qs,Cn.isPlainObject=js,Cn.isRegExp=Ys,Cn.isSafeInteger=function(e){return Vs(e)&&e>=-9007199254740991&&e<=9007199254740991},Cn.isSet=Zs,Cn.isString=Ks,Cn.isSymbol=Xs,Cn.isTypedArray=$s,Cn.isUndefined=function(e){return void 0===e},Cn.isWeakMap=function(e){return qs(e)&&na(e)==I},Cn.isWeakSet=function(e){return qs(e)&&"[object WeakSet]"==cr(e)},Cn.join=function(e,t){return null==e?"":rn.call(e,t)},Cn.kebabCase=Po,Cn.last=Ua,Cn.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r;return void 0!==n&&(i=(i=no(n))<0?sn(r+i,0):on(i,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,i):Ot(e,Lt,i,!0)},Cn.lowerCase=Ao,Cn.lowerFirst=Eo,Cn.lt=Qs,Cn.lte=Js,Cn.max=function(e){return e&&e.length?rr(e,jo,mr):void 0},Cn.maxBy=function(e,t){return e&&e.length?rr(e,Xi(t,2),mr):void 0},Cn.mean=function(e){return Nt(e,jo)},Cn.meanBy=function(e,t){return Nt(e,Xi(t,2))},Cn.min=function(e){return e&&e.length?rr(e,jo,Dr):void 0},Cn.minBy=function(e,t){return e&&e.length?rr(e,Xi(t,2),Dr):void 0},Cn.stubArray=id,Cn.stubFalse=ad,Cn.stubObject=function(){return{}},Cn.stubString=function(){return""},Cn.stubTrue=function(){return!0},Cn.multiply=fd,Cn.nth=function(e,t){return e&&e.length?Fr(e,no(t)):void 0},Cn.noConflict=function(){return Ye._===this&&(Ye._=Re),this},Cn.noop=$o,Cn.now=ms,Cn.pad=function(e,t,n){e=so(e);var r=(t=no(t))?Ht(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return Mi(Jt(i),n)+e+Mi(Qt(i),n)},Cn.padEnd=function(e,t,n){e=so(e);var r=(t=no(t))?Ht(e):0;return t&&r<t?e+Mi(t-r,n):e},Cn.padStart=function(e,t,n){e=so(e);var r=(t=no(t))?Ht(e):0;return t&&r<t?Mi(t-r,n)+e:e},Cn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),un(so(e).replace(K,""),t||0)},Cn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&oa(e,t,n)&&(t=n=void 0),void 0===n&&("boolean"==typeof t?(n=t,t=void 0):"boolean"==typeof e&&(n=e,e=void 0)),void 0===e&&void 0===t?(e=0,t=1):(e=to(e),void 0===t?(t=e,e=0):t=to(t)),e>t){var r=e;e=t,t=r}if(n||e%1||t%1){var i=ln();return on(e+i*(t-e+qe("1e-"+((i+"").length-1))),t)}return kr(e,t)},Cn.reduce=function(e,t,n){var r=Ms(e)?pt:bt,i=arguments.length<3;return r(e,Xi(t,4),n,i,er)},Cn.reduceRight=function(e,t,n){var r=Ms(e)?Bt:bt,i=arguments.length<3;return r(e,Xi(t,4),n,i,tr)},Cn.repeat=function(e,t,n){return t=(n?oa(e,t,n):void 0===t)?1:no(t),_r(so(e),t)},Cn.replace=function(){var e=arguments,t=so(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Cn.result=function(e,t,n){var r=-1,i=(t=oi(t,e)).length;for(i||(i=1,e=void 0);++r<i;){var a=null==e?void 0:e[Ta(t[r])];void 0===a&&(r=i,a=n),e=xs(a)?a.call(e):a}return e},Cn.round=gd,Cn.runInContext=e,Cn.sample=function(e){return(Ms(e)?xn:xr)(e)},Cn.size=function(e){if(null==e)return 0;if(As(e))return Ks(e)?Ht(e):e.length;var t=na(e);return t==p||t==v?e.size:Nr(e).length},Cn.snakeCase=ko,Cn.some=function(e,t,n){var r=Ms(e)?ht:jr;return n&&oa(e,t,n)&&(t=void 0),r(e,Xi(t,3))},Cn.sortedIndex=function(e,t){return Yr(e,t)},Cn.sortedIndexBy=function(e,t,n){return Zr(e,t,Xi(n,2))},Cn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=Yr(e,t);if(r<n&&Cs(e[r],t))return r}return-1},Cn.sortedLastIndex=function(e,t){return Yr(e,t,!0)},Cn.sortedLastIndexBy=function(e,t,n){return Zr(e,t,Xi(n,2),!0)},Cn.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var n=Yr(e,t,!0)-1;if(Cs(e[n],t))return n}return-1},Cn.startCase=_o,Cn.startsWith=function(e,t,n){return e=so(e),n=null==n?0:Kn(no(n),0,e.length),t=$r(t),e.slice(n,n+t.length)==t},Cn.subtract=cd,Cn.sum=function(e){return e&&e.length?Ct(e,jo):0},Cn.sumBy=function(e,t){return e&&e.length?Ct(e,Xi(t,2)):0},Cn.template=function(e,t,n){var r=Cn.templateSettings;n&&oa(e,t,n)&&(t=void 0),e=so(e),t=lo({},t,r,Vi);var i,a,s=lo({},t.imports,r.imports,Vi),o=Oo(s),d=Ft(s,o),u=0,l=t.interpolate||le,f="__p += '",g=Be((t.escape||le).source+"|"+l.source+"|"+(l===W?ne:le).source+"|"+(t.evaluate||le).source+"|$","g"),c="//# sourceURL="+(Ne.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++xe+"]")+"\n";e.replace(g,(function(t,n,r,s,o,d){return r||(r=s),f+=e.slice(u,d).replace(fe,Ut),n&&(i=!0,f+="' +\n__e("+n+") +\n'"),o&&(a=!0,f+="';\n"+o+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),u=d+t.length,t})),f+="';\n";var m=Ne.call(t,"variable")&&t.variable;m||(f="with (obj) {\n"+f+"\n}\n"),f=(a?f.replace(P,""):f).replace(A,"$1").replace(E,"$1;"),f="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var p=Go((function(){return ce(o,c+"return "+f).apply(void 0,d)}));if(p.source=f,Us(p))throw p;return p},Cn.times=function(e,t){if((e=no(e))<1||e>9007199254740991)return[];var n=4294967295,r=on(e,4294967295);e-=4294967295;for(var i=Rt(r,t=Xi(t));++n<e;)t(n);return i},Cn.toFinite=to,Cn.toInteger=no,Cn.toLength=ro,Cn.toLower=function(e){return so(e).toLowerCase()},Cn.toNumber=io,Cn.toSafeInteger=function(e){return e?Kn(no(e),-9007199254740991,9007199254740991):0===e?e:0},Cn.toString=so,Cn.toUpper=function(e){return so(e).toUpperCase()},Cn.trim=function(e,t,n){if((e=so(e))&&(n||void 0===t))return e.replace(Z,"");if(!e||!(t=$r(t)))return e;var r=jt(e),i=jt(t);return ui(r,Pt(r,i),At(r,i)+1).join("")},Cn.trimEnd=function(e,t,n){if((e=so(e))&&(n||void 0===t))return e.replace(X,"");if(!e||!(t=$r(t)))return e;var r=jt(e);return ui(r,0,At(r,jt(t))+1).join("")},Cn.trimStart=function(e,t,n){if((e=so(e))&&(n||void 0===t))return e.replace(K,"");if(!e||!(t=$r(t)))return e;var r=jt(e);return ui(r,Pt(r,jt(t))).join("")},Cn.truncate=function(e,t){var n=30,r="...";if(Ws(t)){var i="separator"in t?t.separator:i;n="length"in t?no(t.length):n,r="omission"in t?$r(t.omission):r}var a=(e=so(e)).length;if(xt(e)){var s=jt(e);a=s.length}if(n>=a)return e;var o=n-Ht(r);if(o<1)return r;var d=s?ui(s,0,o).join(""):e.slice(0,o);if(void 0===i)return d+r;if(s&&(o+=d.length-o),Ys(i)){if(e.slice(o).search(i)){var u,l=d;for(i.global||(i=Be(i.source,so(re.exec(i))+"g")),i.lastIndex=0;u=i.exec(l);)var f=u.index;d=d.slice(0,void 0===f?o:f)}}else if(e.indexOf($r(i),o)!=o){var g=d.lastIndexOf(i);g>-1&&(d=d.slice(0,g))}return d+r},Cn.unescape=function(e){return(e=so(e))&&U.test(e)?e.replace(k,Yt):e},Cn.uniqueId=function(e){var t=++Te;return so(e)+t},Cn.upperCase=Uo,Cn.upperFirst=xo,Cn.each=ss,Cn.eachRight=os,Cn.first=Aa,Xo(Cn,(ld={},dr(Cn,(function(e,t){Ne.call(Cn.prototype,t)||(ld[t]=e)})),ld),{chain:!1}),Cn.VERSION="4.17.20",ot(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Cn[e].placeholder=Cn})),ot(["drop","take"],(function(e,t){Mn.prototype[e]=function(n){n=void 0===n?1:sn(no(n),0);var r=this.__filtered__&&!t?new Mn(this):this.clone();return r.__filtered__?r.__takeCount__=on(n,r.__takeCount__):r.__views__.push({size:on(n,4294967295),type:e+(r.__dir__<0?"Right":"")}),r},Mn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),ot(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;Mn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:Xi(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),ot(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Mn.prototype[e]=function(){return this[n](1).value()[0]}})),ot(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Mn.prototype[e]=function(){return this.__filtered__?new Mn(this):this[n](1)}})),Mn.prototype.compact=function(){return this.filter(jo)},Mn.prototype.find=function(e){return this.filter(e).head()},Mn.prototype.findLast=function(e){return this.reverse().find(e)},Mn.prototype.invokeMap=Ur((function(e,t){return"function"==typeof e?new Mn(this):this.map((function(n){return Sr(n,e,t)}))})),Mn.prototype.reject=function(e){return this.filter(Ls(Xi(e)))},Mn.prototype.slice=function(e,t){e=no(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Mn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),void 0!==t&&(n=(t=no(t))<0?n.dropRight(-t):n.take(t-e)),n)},Mn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Mn.prototype.toArray=function(){return this.take(4294967295)},dr(Mn.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=Cn[r?"take"+("last"==t?"Right":""):t],a=r||/^find/.test(t);i&&(Cn.prototype[t]=function(){var t=this.__wrapped__,s=r?[1]:arguments,o=t instanceof Mn,d=s[0],u=o||Ms(t),l=function(e){var t=i.apply(Cn,mt([e],s));return r&&f?t[0]:t};u&&n&&"function"==typeof d&&1!=d.length&&(o=u=!1);var f=this.__chain__,g=!!this.__actions__.length,c=a&&!f,m=o&&!g;if(!a&&u){t=m?t:new Mn(this);var p=e.apply(t,s);return p.__actions__.push({func:ts,args:[l],thisArg:void 0}),new Fn(p,f)}return c&&m?e.apply(this,s):(p=this.thru(l),c?r?p.value()[0]:p.value():p)})})),ot(["pop","push","shift","sort","splice","unshift"],(function(e){var t=ve[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);Cn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(Ms(i)?i:[],e)}return this[n]((function(n){return t.apply(Ms(n)?n:[],e)}))}})),dr(Mn.prototype,(function(e,t){var n=Cn[t];if(n){var r=n.name+"";Ne.call(vn,r)||(vn[r]=[]),vn[r].push({name:t,func:n})}})),vn[Ci(void 0,2).name]=[{name:"wrapper",func:void 0}],Mn.prototype.clone=function(){var e=new Mn(this.__wrapped__);return e.__actions__=hi(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=hi(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=hi(this.__views__),e},Mn.prototype.reverse=function(){if(this.__filtered__){var e=new Mn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Mn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ms(e),r=t<0,i=n?e.length:0,a=function(e,t,n){var r=-1,i=n.length;for(;++r<i;){var a=n[r],s=a.size;switch(a.type){case"drop":e+=s;break;case"dropRight":t-=s;break;case"take":t=on(t,e+s);break;case"takeRight":e=sn(e,t-s)}}return{start:e,end:t}}(0,i,this.__views__),s=a.start,o=a.end,d=o-s,u=r?o:s-1,l=this.__iteratees__,f=l.length,g=0,c=on(d,this.__takeCount__);if(!n||!r&&i==d&&c==d)return ni(e,this.__actions__);var m=[];e:for(;d--&&g<c;){for(var p=-1,B=e[u+=t];++p<f;){var h=l[p],S=h.iteratee,v=h.type,O=S(B);if(2==v)B=O;else if(!O){if(1==v)continue e;break e}}m[g++]=B}return m},Cn.prototype.at=ns,Cn.prototype.chain=function(){return es(this)},Cn.prototype.commit=function(){return new Fn(this.value(),this.__chain__)},Cn.prototype.next=function(){void 0===this.__values__&&(this.__values__=eo(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?void 0:this.__values__[this.__index__++]}},Cn.prototype.plant=function(e){for(var t,n=this;n instanceof wn;){var r=ba(n);r.__index__=0,r.__values__=void 0,t?i.__wrapped__=r:t=r;var i=r;n=n.__wrapped__}return i.__wrapped__=e,t},Cn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Mn){var t=e;return this.__actions__.length&&(t=new Mn(this)),(t=t.reverse()).__actions__.push({func:ts,args:[Wa],thisArg:void 0}),new Fn(t,this.__chain__)}return this.thru(Wa)},Cn.prototype.toJSON=Cn.prototype.valueOf=Cn.prototype.value=function(){return ni(this.__wrapped__,this.__actions__)},Cn.prototype.first=Cn.prototype.head,Qe&&(Cn.prototype[Qe]=function(){return this}),Cn}();Ye._=Zt,void 0===(i=function(){return Zt}.call(t,n,t,r))||(r.exports=i)}).call(this)}).call(this,n(2),n(10)(e))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){const{flow:r,first:i,isArray:a,isEmpty:s,propertyOf:o}=n(1),d=n(28),u=n(29),l=n(30);const f=function(){const e={};return[...d.PGNs,...u.PGNs,...l.PGNs].forEach(t=>{e[t.PGN]||(e[t.PGN]=[]),e[t.PGN].push(t),t.Fields=a(t.Fields)?t.Fields:t.Fields?[t.Fields.Field]:[];var n=1;t.Fields.forEach(e=>{"Reserved"===e.Name&&(e.Name="Reserved"+n++)})}),e}(),g=e=>f[e];e.exports={getPgn:g,getPgn0:r(g,i),pgns:f}},function(e,t,n){const{invert:r,propertyOf:i}=n(1),a=n(31),s={0:"Global",1:"Highway",2:"Agriculture",3:"Construction",4:"Marine Industry",5:"Industrial"},o={0:"Reserved for 2000 Use",10:"System tools",20:"Safety systems",25:"Internetwork device",30:"Electrical Distribution",35:"Electrical Generation",40:"Steering and Control surfaces",50:"Propulsion",60:"Navigation",70:"Communication",75:"Sensor Communication Interface",80:"Instrumentation/general systems",85:"External Environment",90:"Internal Environment",100:"Deck + cargo + fishing equipment systems",120:"Display",125:"Entertainment"},d=r(o),u=r(s);u.Marine=4;const l=r(a);e.exports.manufacturerCodes=l,e.exports.getIndustryName=i(s),e.exports.getManufacturerName=i(l),e.exports.getIndustryCode=i(u),e.exports.getManufacturerCode=i(a),e.exports.getDeviceClassCode=i(d),e.exports.getDeviceClassName=i(o),e.exports.defaultTransmitPGNs=[126992,128267,129794,129038,129041,127505,127506,127508,129026,129025,129029,127250,130306,126720,127489,127488,130311,130312,127257,128259,127502]},function(e,t,n){(function(e){const{compact:r,cond:i,constant:a,curry:s,flow:o,isEmpty:d,isString:u,negate:l,overSome:f,startsWith:g,stubTrue:c,toNumber:m,zipObject:p}=n(1),{arrBuff:B,byteString:h,getPlainPGNs:S,rmChecksum:v,trimWrap:O,compute0183Checksum:y,hexByte:I}=n(6),{buildCanId:L,encodeCanIdString:N,parseCanId:T,parseCanIdStr:D}=n(7),{parse:b}=n(14);function C(e,t,n,r={}){return{...e,format:t,data:n,...r}}function R(e,t){return t&&u(t)?`${e} - ${t}`:e}const w=s((e,t,n)=>({error:new Error(R(t,n)),format:e,input:n}));function F(e,t){return str=e.toString(16).toUpperCase(),"0".repeat(t-str.length)+str}t.isActisense=e=>"T"===e.charAt(10)&&"Z"===e.charAt(23),t.parseActisense=t=>{const[n,r,i,a,s,o,...d]=t.split(",");return C(L(r,i,s,a),"Actisense",e.from(d.join(""),"hex"),{len:Number(o),timestamp:n,coalesced:!0})},t.encodeActisense=({pgn:e,data:t,timestamp:n,prio:r=2,dst:i=255,src:a=0})=>[n||(new Date).toISOString(),r,e,a,i,t.length,h(t)].join(","),t.toActisenseSerialFormat=(e,n,r=255,i=0)=>t.encodeActisense({pgn:e,data:n,dst:r,src:i}),t.isYDRAW=e=>{if(":"!==e.charAt(2))return!1;const t=e.substr(12,3);return" R "===t||" T "===t},t.parseYDRAW=e=>{const t=e.split(" ");if(t.length<4)return w("YDRAW","Invalid parts.",e);const[n,r,i,...a]=t;return C(D(i),"YDRAW",B(a),{direction:r,time:n})},t.encodeYDRAW=({data:e,...t})=>{const n=N(t);return(e.length>8||126720==t.pgn?S(e):[e]).map(e=>n+" "+h(e," "))},t.isPCDIN=g("$PCDIN,"),t.parsePCDIN=t=>{const[n,r,i,a,s]=t.split(",");let o=parseInt(i,32);return o/=1024,o+=1262304e3,o*=1e3,C(L(0,parseInt(r,16),255,parseInt(a,16)),"PCDIN",e.from(v(s),"hex"),{coalesced:!0,prefix:n,timer:o,timestamp:new Date(o)})},t.encodePCDIN=({prefix:e="$PCDIN",pgn:t,data:n,dst:r=255})=>{const i=[e,F(t,6),"0000180C",I(r).toUpperCase(),h(n,"").toUpperCase()].join(",");return i+y(i)},t.isMXPGN=g("$MXPGN,"),t.parseMXPGN=t=>{const[n,r,i,a]=t.split(","),s=parseInt(i.substr(0,2),16).toString(2).padStart(8,"0"),o=parseInt(i.substr(2,2),16),d=parseInt(s.substr(0,1),2);parseInt(s.substr(1,3),2),parseInt(s.substr(4,4),2);let u,l;return d?l=o:u=o,C(L(0,parseInt(r,16),255,parseInt(u,16)),"MXPGN",e.from(v(a),"hex"),{coalesced:!0,prefix:n})},t.encodeMXPGN=({prefix:e="$MXPGN",pgn:t,data:n,dst:r=255})=>{const i=[e,F(t,6),"0000180C",I(r).toUpperCase(),h(n,"").toUpperCase()].join(",");return i+y(i)},t.isPDGY=g("!PDGY,"),t.parsePDGY=t=>{const n=t.split(",");if(7!=n.length)return w("iKonvert","Invalid parts.",t);const[r,i,a,s,o,d,u]=n;return C(L(a,i,o,s),"PDGY",e.from(u,"base64"),{timer:Number(d),prefix:r})},t.encodePDGY=({prefix:e="!PDGY",pgn:t,data:n,dst:r=255})=>[e,t,r,n.toString("base64")].join(","),t.isPDGYdebug=g("$PDGY,"),t.parsePDGYdebug=t=>{const[n,r,...i]=t.split(","),a=i.map(m),s=p(["busLoad","errors","deviceCount","timer","gatewaySrc","rejectedTX"],a),o=s.gatewaySrc;return C(L(3,r,o,o),"PDGYdebug",e.from(a),{fields:s,prefix:n})},t.isCandump1=g("<0x"),t.parseCandump1=e=>{const[t,n,...r]=e.split(" ");return C(D(O(t)),"candump1",B(r),{len:Number(O(n))})},t.isCandump2=g("can"),t.parseCandump2=e=>{const[t,n,i,...a]=r(e.split(" "));return C(D(n),"candump2",B(a),{bus:t,len:Number(O(i))})},t.isCandump3=g("("),t.parseCandump3=e=>{const[t,n,r]=e.split(" "),[i,a]=r.split("#");return C(D(i),"candump3",B(a),{timestamp:t,bus:n})};const M=f([l(u),d]);t.parseN2kString=i([[M,w("INVALID","Input not string or empty.")],[t.isActisense,t.parseActisense],[t.isYDRAW,t.parseYDRAW],[t.isPCDIN,t.parsePCDIN],[t.isMXPGN,t.parseMXPGN],[t.isPDGY,t.parsePDGY],[t.isCandump1,t.parseCandump1],[t.isCandump2,t.parseCandump2],[t.isCandump3,t.parseCandump3],[t.isPDGYdebug,t.parsePDGYdebug],[c,w("MISSING_PARSER","Parser not found for input.")]]),t.isN2KString=i([[M,()=>!1],[t.isActisense,()=>!0],[t.isYDRAW,()=>!0],[t.isPCDIN,()=>!0],[t.isMXPGN,()=>!0],[t.isPDGY,()=>!0],[t.isCandump1,()=>!0],[t.isCandump2,()=>!0],[t.isCandump3,()=>!0],[t.isPDGYdebug,()=>!0],[c,()=>!1]]),t.isN2KOver0183=e=>t.isPCDIN(e)||t.isMXPGN(e),t.parseN2KOver0183=e=>t.parsePCDIN(e)||t.parseMXPGN(e)}).call(this,n(0).Buffer)},function(e,t,n){"use strict";function r(e){if(null===e||!0===e||!1===e)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function i(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object.prototype.toString.call(e);return e instanceof Date||"object"==typeof e&&"[object Date]"===t?new Date(e.getTime()):"number"==typeof e||"[object Number]"===t?new Date(e):("string"!=typeof e&&"[object String]"!==t||"undefined"==typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as arguments. Please use `parseISO` to parse strings. See: https://git.io/fpAk2"),console.warn((new Error).stack)),new Date(NaN))}function a(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return n.setDate(n.getDate()+a),n}function s(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e).getTime(),a=r(t);return new Date(n+a)}n.r(t),n.d(t,"addDays",(function(){return a})),n.d(t,"addHours",(function(){return o})),n.d(t,"addISOWeekYears",(function(){return B})),n.d(t,"addMilliseconds",(function(){return s})),n.d(t,"addMinutes",(function(){return h})),n.d(t,"addMonths",(function(){return v})),n.d(t,"addQuarters",(function(){return O})),n.d(t,"addSeconds",(function(){return y})),n.d(t,"addWeeks",(function(){return I})),n.d(t,"addYears",(function(){return L})),n.d(t,"areIntervalsOverlapping",(function(){return N})),n.d(t,"closestIndexTo",(function(){return T})),n.d(t,"closestTo",(function(){return D})),n.d(t,"compareAsc",(function(){return b})),n.d(t,"compareDesc",(function(){return C})),n.d(t,"differenceInCalendarDays",(function(){return m})),n.d(t,"differenceInCalendarISOWeekYears",(function(){return R})),n.d(t,"differenceInCalendarISOWeeks",(function(){return w})),n.d(t,"differenceInCalendarMonths",(function(){return F})),n.d(t,"differenceInCalendarQuarters",(function(){return P})),n.d(t,"differenceInCalendarWeeks",(function(){return A})),n.d(t,"differenceInCalendarYears",(function(){return E})),n.d(t,"differenceInDays",(function(){return k})),n.d(t,"differenceInHours",(function(){return U})),n.d(t,"differenceInISOWeekYears",(function(){return V})),n.d(t,"differenceInMilliseconds",(function(){return _})),n.d(t,"differenceInMinutes",(function(){return G})),n.d(t,"differenceInMonths",(function(){return W})),n.d(t,"differenceInQuarters",(function(){return q})),n.d(t,"differenceInSeconds",(function(){return z})),n.d(t,"differenceInWeeks",(function(){return H})),n.d(t,"differenceInYears",(function(){return j})),n.d(t,"eachDayOfInterval",(function(){return Y})),n.d(t,"eachWeekOfInterval",(function(){return Z})),n.d(t,"eachWeekendOfInterval",(function(){return $})),n.d(t,"eachWeekendOfMonth",(function(){return ee})),n.d(t,"eachWeekendOfYear",(function(){return re})),n.d(t,"endOfDay",(function(){return ie})),n.d(t,"endOfDecade",(function(){return ae})),n.d(t,"endOfHour",(function(){return se})),n.d(t,"endOfISOWeek",(function(){return de})),n.d(t,"endOfISOWeekYear",(function(){return ue})),n.d(t,"endOfMinute",(function(){return le})),n.d(t,"endOfMonth",(function(){return J})),n.d(t,"endOfQuarter",(function(){return fe})),n.d(t,"endOfSecond",(function(){return ge})),n.d(t,"endOfWeek",(function(){return oe})),n.d(t,"endOfYear",(function(){return ne})),n.d(t,"format",(function(){return Je})),n.d(t,"formatDistance",(function(){return rt})),n.d(t,"formatDistanceStrict",(function(){return it})),n.d(t,"formatRelative",(function(){return at})),n.d(t,"fromUnixTime",(function(){return st})),n.d(t,"getDate",(function(){return ot})),n.d(t,"getDay",(function(){return dt})),n.d(t,"getDayOfYear",(function(){return ut})),n.d(t,"getDaysInMonth",(function(){return S})),n.d(t,"getDaysInYear",(function(){return ft})),n.d(t,"getDecade",(function(){return gt})),n.d(t,"getHours",(function(){return ct})),n.d(t,"getISODay",(function(){return mt})),n.d(t,"getISOWeek",(function(){return pt})),n.d(t,"getISOWeekYear",(function(){return l})),n.d(t,"getISOWeeksInYear",(function(){return Bt})),n.d(t,"getMilliseconds",(function(){return ht})),n.d(t,"getMinutes",(function(){return St})),n.d(t,"getMonth",(function(){return vt})),n.d(t,"getOverlappingDaysInIntervals",(function(){return Ot})),n.d(t,"getQuarter",(function(){return M})),n.d(t,"getSeconds",(function(){return yt})),n.d(t,"getTime",(function(){return It})),n.d(t,"getUnixTime",(function(){return Lt})),n.d(t,"getWeek",(function(){return Dt})),n.d(t,"getWeekOfMonth",(function(){return bt})),n.d(t,"getWeekYear",(function(){return Nt})),n.d(t,"getWeeksInMonth",(function(){return Rt})),n.d(t,"getYear",(function(){return wt})),n.d(t,"isAfter",(function(){return Ft})),n.d(t,"isBefore",(function(){return Mt})),n.d(t,"isDate",(function(){return Pt})),n.d(t,"isEqual",(function(){return At})),n.d(t,"isFirstDayOfMonth",(function(){return Et})),n.d(t,"isFriday",(function(){return kt})),n.d(t,"isLastDayOfMonth",(function(){return _t})),n.d(t,"isLeapYear",(function(){return lt})),n.d(t,"isMonday",(function(){return Ut})),n.d(t,"isSameDay",(function(){return xt})),n.d(t,"isSameHour",(function(){return Gt})),n.d(t,"isSameISOWeek",(function(){return qt})),n.d(t,"isSameISOWeekYear",(function(){return zt})),n.d(t,"isSameMinute",(function(){return jt})),n.d(t,"isSameMonth",(function(){return Yt})),n.d(t,"isSameQuarter",(function(){return Kt})),n.d(t,"isSameSecond",(function(){return $t})),n.d(t,"isSameWeek",(function(){return Wt})),n.d(t,"isSameYear",(function(){return Qt})),n.d(t,"isSaturday",(function(){return Jt})),n.d(t,"isSunday",(function(){return K})),n.d(t,"isThursday",(function(){return en})),n.d(t,"isTuesday",(function(){return tn})),n.d(t,"isValid",(function(){return ce})),n.d(t,"isWednesday",(function(){return nn})),n.d(t,"isWeekend",(function(){return X})),n.d(t,"isWithinInterval",(function(){return rn})),n.d(t,"lastDayOfDecade",(function(){return an})),n.d(t,"lastDayOfISOWeek",(function(){return on})),n.d(t,"lastDayOfISOWeekYear",(function(){return dn})),n.d(t,"lastDayOfMonth",(function(){return Ct})),n.d(t,"lastDayOfQuarter",(function(){return un})),n.d(t,"lastDayOfWeek",(function(){return sn})),n.d(t,"lastDayOfYear",(function(){return ln})),n.d(t,"lightFormat",(function(){return mn})),n.d(t,"max",(function(){return Bn})),n.d(t,"min",(function(){return hn})),n.d(t,"parse",(function(){return ir})),n.d(t,"parseISO",(function(){return fr})),n.d(t,"roundToNearestMinutes",(function(){return yr})),n.d(t,"setDate",(function(){return Ir})),n.d(t,"setDay",(function(){return Lr})),n.d(t,"setDayOfYear",(function(){return Nr})),n.d(t,"setHours",(function(){return Tr})),n.d(t,"setISODay",(function(){return Dr})),n.d(t,"setISOWeek",(function(){return br})),n.d(t,"setISOWeekYear",(function(){return p})),n.d(t,"setMilliseconds",(function(){return Cr})),n.d(t,"setMinutes",(function(){return Rr})),n.d(t,"setMonth",(function(){return wr})),n.d(t,"setQuarter",(function(){return Fr})),n.d(t,"setSeconds",(function(){return Mr})),n.d(t,"setWeek",(function(){return Pr})),n.d(t,"setWeekYear",(function(){return Ar})),n.d(t,"setYear",(function(){return Er})),n.d(t,"startOfDay",(function(){return c})),n.d(t,"startOfDecade",(function(){return kr})),n.d(t,"startOfHour",(function(){return Vt})),n.d(t,"startOfISOWeek",(function(){return u})),n.d(t,"startOfISOWeekYear",(function(){return f})),n.d(t,"startOfMinute",(function(){return Ht})),n.d(t,"startOfMonth",(function(){return Q})),n.d(t,"startOfQuarter",(function(){return Zt})),n.d(t,"startOfSecond",(function(){return Xt})),n.d(t,"startOfWeek",(function(){return d})),n.d(t,"startOfWeekYear",(function(){return Tt})),n.d(t,"startOfYear",(function(){return te})),n.d(t,"subDays",(function(){return _r})),n.d(t,"subHours",(function(){return Ur})),n.d(t,"subISOWeekYears",(function(){return x})),n.d(t,"subMilliseconds",(function(){return He})),n.d(t,"subMinutes",(function(){return xr})),n.d(t,"subMonths",(function(){return Vr})),n.d(t,"subQuarters",(function(){return Gr})),n.d(t,"subSeconds",(function(){return Wr})),n.d(t,"subWeeks",(function(){return qr})),n.d(t,"subYears",(function(){return zr})),n.d(t,"toDate",(function(){return i}));function o(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return s(e,36e5*n)}function d(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},a=n.locale,s=a&&a.options&&a.options.weekStartsOn,o=null==s?0:r(s),d=null==n.weekStartsOn?o:r(n.weekStartsOn);if(!(d>=0&&d<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var u=i(e),l=u.getDay(),f=(l<d?7:0)+l-d;return u.setDate(u.getDate()-f),u.setHours(0,0,0,0),u}function u(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return d(e,{weekStartsOn:1})}function l(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear(),r=new Date(0);r.setFullYear(n+1,0,4),r.setHours(0,0,0,0);var a=u(r),s=new Date(0);s.setFullYear(n,0,4),s.setHours(0,0,0,0);var o=u(s);return t.getTime()>=a.getTime()?n+1:t.getTime()>=o.getTime()?n:n-1}function f(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=l(e),n=new Date(0);n.setFullYear(t,0,4),n.setHours(0,0,0,0);var r=u(n);return r}function g(e){var t=new Date(e.getTime()),n=t.getTimezoneOffset();return t.setSeconds(0,0),6e4*n+t.getTime()%6e4}function c(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setHours(0,0,0,0),t}function m(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=c(e),r=c(t),i=n.getTime()-g(n),a=r.getTime()-g(r);return Math.round((i-a)/864e5)}function p(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t),s=m(n,f(n)),o=new Date(0);return o.setFullYear(a,0,4),o.setHours(0,0,0,0),(n=f(o)).setDate(n.getDate()+s),n}function B(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return p(e,l(e)+n)}function h(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return s(e,6e4*n)}function S(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear(),r=t.getMonth(),a=new Date(0);return a.setFullYear(n,r+1,0),a.setHours(0,0,0,0),a.getDate()}function v(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t),s=n.getMonth()+a,o=new Date(0);o.setFullYear(n.getFullYear(),s,1),o.setHours(0,0,0,0);var d=S(o);return n.setMonth(s,Math.min(d,n.getDate())),n}function O(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t),i=3*n;return v(e,i)}function y(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return s(e,1e3*n)}function I(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t),i=7*n;return a(e,i)}function L(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return v(e,12*n)}function N(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=e||{},r=t||{},a=i(n.start).getTime(),s=i(n.end).getTime(),o=i(r.start).getTime(),d=i(r.end).getTime();if(!(a<=s&&o<=d))throw new RangeError("Invalid interval");return a<d&&o<s}function T(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e);if(isNaN(n))return NaN;var r,a,s=n.getTime();return(null==t?[]:"function"==typeof t.forEach?t:Array.prototype.slice.call(t)).forEach((function(e,t){var n=i(e);if(isNaN(n))return r=NaN,void(a=NaN);var o=Math.abs(s-n.getTime());(null==r||o<a)&&(r=t,a=o)})),r}function D(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e);if(isNaN(n))return new Date(NaN);var r,a,s=n.getTime();return(null==t?[]:"function"==typeof t.forEach?t:Array.prototype.slice.call(t)).forEach((function(e){var t=i(e);if(isNaN(t))return r=new Date(NaN),void(a=NaN);var n=Math.abs(s-t.getTime());(null==r||n<a)&&(r=t,a=n)})),r}function b(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=n.getTime()-r.getTime();return a<0?-1:a>0?1:a}function C(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=n.getTime()-r.getTime();return a>0?-1:a<0?1:a}function R(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");return l(e)-l(t)}function w(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=u(e),r=u(t),i=n.getTime()-g(n),a=r.getTime()-g(r);return Math.round((i-a)/6048e5)}function F(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=n.getFullYear()-r.getFullYear(),s=n.getMonth()-r.getMonth();return 12*a+s}function M(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=Math.floor(t.getMonth()/3)+1;return n}function P(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=n.getFullYear()-r.getFullYear(),s=M(n)-M(r);return 4*a+s}function A(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=d(e,n),i=d(t,n),a=r.getTime()-g(r),s=i.getTime()-g(i);return Math.round((a-s)/6048e5)}function E(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t);return n.getFullYear()-r.getFullYear()}function k(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=b(n,r),s=Math.abs(m(n,r));n.setDate(n.getDate()-a*s);var o=b(n,r)===-a,d=a*(s-o);return 0===d?0:d}function _(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t);return n.getTime()-r.getTime()}function U(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=_(e,t)/36e5;return n>0?Math.floor(n):Math.ceil(n)}function x(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return B(e,-n)}function V(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=b(n,r),s=Math.abs(R(n,r)),o=b(n=x(n,a*s),r)===-a,d=a*(s-o);return 0===d?0:d}function G(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=_(e,t)/6e4;return n>0?Math.floor(n):Math.ceil(n)}function W(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=b(n,r),s=Math.abs(F(n,r));n.setMonth(n.getMonth()-a*s);var o=b(n,r)===-a,d=a*(s-o);return 0===d?0:d}function q(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=W(e,t)/3;return n>0?Math.floor(n):Math.ceil(n)}function z(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=_(e,t)/1e3;return n>0?Math.floor(n):Math.ceil(n)}function H(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=k(e,t)/7;return n>0?Math.floor(n):Math.ceil(n)}function j(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t),a=b(n,r),s=Math.abs(E(n,r));n.setFullYear(n.getFullYear()-a*s);var o=b(n,r)===-a,d=a*(s-o);return 0===d?0:d}function Y(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=e||{},r=i(n.start),a=i(n.end),s=a.getTime();if(!(r.getTime()<=s))throw new RangeError("Invalid interval");var o=[],d=r;d.setHours(0,0,0,0);var u=t&&"step"in t?Number(t.step):1;if(u<1||isNaN(u))throw new RangeError("`options.step` must be a number greater than 1");for(;d.getTime()<=s;)o.push(i(d)),d.setDate(d.getDate()+u),d.setHours(0,0,0,0);return o}function Z(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=e||{},r=i(n.start),a=i(n.end),s=a.getTime();if(!(r.getTime()<=s))throw new RangeError("Invalid interval");var o=d(r,t),u=d(a,t);o.setHours(15),u.setHours(15),s=u.getTime();for(var l=[],f=o;f.getTime()<=s;)f.setHours(0),l.push(i(f)),(f=I(f,1)).setHours(15);return l}function K(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 0===i(e).getDay()}function X(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getDay();return 0===n||6===n}function $(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");for(var t=Y(e),n=[],r=0;r++<t.length;){var i=t[r];X(i)&&(n.push(i),K(i)&&(r+=5))}return n}function Q(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setDate(1),t.setHours(0,0,0,0),t}function J(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}function ee(e){if(arguments.length<1)throw new TypeError("1 arguments required, but only "+arguments.length+" present");var t=Q(e);if(isNaN(t))throw new RangeError("The passed date is invalid");var n=J(e);return $({start:t,end:n})}function te(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=new Date(0);return n.setFullYear(t.getFullYear(),0,1),n.setHours(0,0,0,0),n}function ne(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear();return t.setFullYear(n+1,0,0),t.setHours(23,59,59,999),t}function re(e){if(arguments.length<1)throw new TypeError("1 arguments required, but only "+arguments.length+" present");var t=te(e);if(isNaN(t))throw new RangeError("The passed date is invalid");var n=ne(e);return $({start:t,end:n})}function ie(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setHours(23,59,59,999),t}function ae(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear(),r=9+10*Math.floor(n/10);return t.setFullYear(r,11,31),t.setHours(23,59,59,999),t}function se(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setMinutes(59,59,999),t}function oe(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},a=n.locale,s=a&&a.options&&a.options.weekStartsOn,o=null==s?0:r(s),d=null==n.weekStartsOn?o:r(n.weekStartsOn);if(!(d>=0&&d<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var u=i(e),l=u.getDay(),f=6+(l<d?-7:0)-(l-d);return u.setDate(u.getDate()+f),u.setHours(23,59,59,999),u}function de(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return oe(e,{weekStartsOn:1})}function ue(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=l(e),n=new Date(0);n.setFullYear(t+1,0,4),n.setHours(0,0,0,0);var r=u(n);return r.setMilliseconds(r.getMilliseconds()-1),r}function le(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setSeconds(59,999),t}function fe(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMonth(),r=n-n%3+3;return t.setMonth(r,0),t.setHours(23,59,59,999),t}function ge(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setMilliseconds(999),t}function ce(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return!isNaN(t)}var me={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function pe(e){return function(t){var n=t||{},r=n.width?String(n.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}var Be={date:pe({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:pe({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:pe({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},he={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function Se(e){return function(t,n){var r=n||{},i=r.width?String(r.width):e.defaultWidth;return("formatting"===(r.context?String(r.context):"standalone")&&e.formattingValues?e.formattingValues[i]||e.formattingValues[e.defaultFormattingWidth]:e.values[i]||e.values[e.defaultWidth])[e.argumentCallback?e.argumentCallback(t):t]}}function ve(e){return function(t,n){var r=String(t),i=n||{},a=i.width,s=a&&e.matchPatterns[a]||e.matchPatterns[e.defaultMatchWidth],o=r.match(s);if(!o)return null;var d,u=o[0],l=a&&e.parsePatterns[a]||e.parsePatterns[e.defaultParseWidth];return d="[object Array]"===Object.prototype.toString.call(l)?l.findIndex((function(e){return e.test(r)})):function(e,t){for(var n in e)if(e.hasOwnProperty(n)&&t(e[n]))return n}(l,(function(e){return e.test(r)})),d=e.valueCallback?e.valueCallback(d):d,{value:d=i.valueCallback?i.valueCallback(d):d,rest:r.slice(u.length)}}}var Oe,ye={formatDistance:function(e,t,n){var r;return n=n||{},r="string"==typeof me[e]?me[e]:1===t?me[e].one:me[e].other.replace("{{count}}",t),n.addSuffix?n.comparison>0?"in "+r:r+" ago":r},formatLong:Be,formatRelative:function(e,t,n,r){return he[e]},localize:{ordinalNumber:function(e,t){var n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:Se({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:Se({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(e){return Number(e)-1}}),month:Se({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:Se({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:Se({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(Oe={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}},function(e,t){var n=String(e),r=t||{},i=n.match(Oe.matchPattern);if(!i)return null;var a=i[0],s=n.match(Oe.parsePattern);if(!s)return null;var o=Oe.valueCallback?Oe.valueCallback(s[0]):s[0];return{value:o=r.valueCallback?r.valueCallback(o):o,rest:n.slice(a.length)}}),era:ve({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:ve({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:ve({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:ve({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:ve({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ie(e,t){for(var n=e<0?"-":"",r=Math.abs(e).toString();r.length<t;)r="0"+r;return n+r}var Le={y:function(e,t){var n=e.getUTCFullYear(),r=n>0?n:1-n;return Ie("yy"===t?r%100:r,t.length)},M:function(e,t){var n=e.getUTCMonth();return"M"===t?String(n+1):Ie(n+1,2)},d:function(e,t){return Ie(e.getUTCDate(),t.length)},a:function(e,t){var n=e.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":case"aaa":return n.toUpperCase();case"aaaaa":return n[0];case"aaaa":default:return"am"===n?"a.m.":"p.m."}},h:function(e,t){return Ie(e.getUTCHours()%12||12,t.length)},H:function(e,t){return Ie(e.getUTCHours(),t.length)},m:function(e,t){return Ie(e.getUTCMinutes(),t.length)},s:function(e,t){return Ie(e.getUTCSeconds(),t.length)}};function Ne(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=1,n=i(e),r=n.getUTCDay(),a=(r<t?7:0)+r-t;return n.setUTCDate(n.getUTCDate()-a),n.setUTCHours(0,0,0,0),n}function Te(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getUTCFullYear(),r=new Date(0);r.setUTCFullYear(n+1,0,4),r.setUTCHours(0,0,0,0);var a=Ne(r),s=new Date(0);s.setUTCFullYear(n,0,4),s.setUTCHours(0,0,0,0);var o=Ne(s);return t.getTime()>=a.getTime()?n+1:t.getTime()>=o.getTime()?n:n-1}function De(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Te(e),n=new Date(0);n.setUTCFullYear(t,0,4),n.setUTCHours(0,0,0,0);var r=Ne(n);return r}function be(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=Ne(t).getTime()-De(t).getTime();return Math.round(n/6048e5)+1}function Ce(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},a=n.locale,s=a&&a.options&&a.options.weekStartsOn,o=null==s?0:r(s),d=null==n.weekStartsOn?o:r(n.weekStartsOn);if(!(d>=0&&d<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var u=i(e),l=u.getUTCDay(),f=(l<d?7:0)+l-d;return u.setUTCDate(u.getUTCDate()-f),u.setUTCHours(0,0,0,0),u}function Re(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=i(e,t),a=n.getUTCFullYear(),s=t||{},o=s.locale,d=o&&o.options&&o.options.firstWeekContainsDate,u=null==d?1:r(d),l=null==s.firstWeekContainsDate?u:r(s.firstWeekContainsDate);if(!(l>=1&&l<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var f=new Date(0);f.setUTCFullYear(a+1,0,l),f.setUTCHours(0,0,0,0);var g=Ce(f,t),c=new Date(0);c.setUTCFullYear(a,0,l),c.setUTCHours(0,0,0,0);var m=Ce(c,t);return n.getTime()>=g.getTime()?a+1:n.getTime()>=m.getTime()?a:a-1}function we(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},i=n.locale,a=i&&i.options&&i.options.firstWeekContainsDate,s=null==a?1:r(a),o=null==n.firstWeekContainsDate?s:r(n.firstWeekContainsDate),d=Re(e,t),u=new Date(0);u.setUTCFullYear(d,0,o),u.setUTCHours(0,0,0,0);var l=Ce(u,t);return l}function Fe(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=i(e),r=Ce(n,t).getTime()-we(n,t).getTime();return Math.round(r/6048e5)+1}var Me="midnight",Pe="noon",Ae="morning",Ee="afternoon",ke="evening",_e="night";function Ue(e,t){var n=e>0?"-":"+",r=Math.abs(e),i=Math.floor(r/60),a=r%60;if(0===a)return n+String(i);var s=t||"";return n+String(i)+s+Ie(a,2)}function xe(e,t){return e%60==0?(e>0?"-":"+")+Ie(Math.abs(e)/60,2):Ve(e,t)}function Ve(e,t){var n=t||"",r=e>0?"-":"+",i=Math.abs(e);return r+Ie(Math.floor(i/60),2)+n+Ie(i%60,2)}var Ge={G:function(e,t,n){var r=e.getUTCFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if("yo"===t){var r=e.getUTCFullYear(),i=r>0?r:1-r;return n.ordinalNumber(i,{unit:"year"})}return Le.y(e,t)},Y:function(e,t,n,r){var i=Re(e,r),a=i>0?i:1-i;return"YY"===t?Ie(a%100,2):"Yo"===t?n.ordinalNumber(a,{unit:"year"}):Ie(a,t.length)},R:function(e,t){return Ie(Te(e),t.length)},u:function(e,t){return Ie(e.getUTCFullYear(),t.length)},Q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return Ie(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return Ie(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){var r=e.getUTCMonth();switch(t){case"M":case"MM":return Le.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){var r=e.getUTCMonth();switch(t){case"L":return String(r+1);case"LL":return Ie(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){var i=Fe(e,r);return"wo"===t?n.ordinalNumber(i,{unit:"week"}):Ie(i,t.length)},I:function(e,t,n){var r=be(e);return"Io"===t?n.ordinalNumber(r,{unit:"week"}):Ie(r,t.length)},d:function(e,t,n){return"do"===t?n.ordinalNumber(e.getUTCDate(),{unit:"date"}):Le.d(e,t)},D:function(e,t,n){var r=function(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getTime();t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0);var r=t.getTime(),a=n-r;return Math.floor(a/864e5)+1}(e);return"Do"===t?n.ordinalNumber(r,{unit:"dayOfYear"}):Ie(r,t.length)},E:function(e,t,n){var r=e.getUTCDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(a);case"ee":return Ie(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(i,{width:"short",context:"formatting"});case"eeee":default:return n.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(a);case"cc":return Ie(a,t.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(i,{width:"narrow",context:"standalone"});case"cccccc":return n.day(i,{width:"short",context:"standalone"});case"cccc":default:return n.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,n){var r=e.getUTCDay(),i=0===r?7:r;switch(t){case"i":return String(i);case"ii":return Ie(i,t.length);case"io":return n.ordinalNumber(i,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){var r=e.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){var r,i=e.getUTCHours();switch(r=12===i?Pe:0===i?Me:i/12>=1?"pm":"am",t){case"b":case"bb":case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){var r,i=e.getUTCHours();switch(r=i>=17?ke:i>=12?Ee:i>=4?Ae:_e,t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if("ho"===t){var r=e.getUTCHours()%12;return 0===r&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return Le.h(e,t)},H:function(e,t,n){return"Ho"===t?n.ordinalNumber(e.getUTCHours(),{unit:"hour"}):Le.H(e,t)},K:function(e,t,n){var r=e.getUTCHours()%12;return"Ko"===t?n.ordinalNumber(r,{unit:"hour"}):Ie(r,t.length)},k:function(e,t,n){var r=e.getUTCHours();return 0===r&&(r=24),"ko"===t?n.ordinalNumber(r,{unit:"hour"}):Ie(r,t.length)},m:function(e,t,n){return"mo"===t?n.ordinalNumber(e.getUTCMinutes(),{unit:"minute"}):Le.m(e,t)},s:function(e,t,n){return"so"===t?n.ordinalNumber(e.getUTCSeconds(),{unit:"second"}):Le.s(e,t)},S:function(e,t){var n=t.length,r=e.getUTCMilliseconds();return Ie(Math.floor(r*Math.pow(10,n-3)),n)},X:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();if(0===i)return"Z";switch(t){case"X":return xe(i);case"XXXX":case"XX":return Ve(i);case"XXXXX":case"XXX":default:return Ve(i,":")}},x:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();switch(t){case"x":return xe(i);case"xxxx":case"xx":return Ve(i);case"xxxxx":case"xxx":default:return Ve(i,":")}},O:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Ue(i,":");case"OOOO":default:return"GMT"+Ve(i,":")}},z:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Ue(i,":");case"zzzz":default:return"GMT"+Ve(i,":")}},t:function(e,t,n,r){var i=r._originalDate||e;return Ie(Math.floor(i.getTime()/1e3),t.length)},T:function(e,t,n,r){return Ie((r._originalDate||e).getTime(),t.length)}};function We(e,t){switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}}function qe(e,t){switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}}var ze={p:qe,P:function(e,t){var n,r=e.match(/(P+)(p+)?/),i=r[1],a=r[2];if(!a)return We(e,t);switch(i){case"P":n=t.dateTime({width:"short"});break;case"PP":n=t.dateTime({width:"medium"});break;case"PPP":n=t.dateTime({width:"long"});break;case"PPPP":default:n=t.dateTime({width:"full"})}return n.replace("{{date}}",We(i,t)).replace("{{time}}",qe(a,t))}};function He(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return s(e,-n)}var je=["D","DD","YY","YYYY"];function Ye(e){return-1!==je.indexOf(e)}function Ze(e){throw new RangeError("`options.awareOfUnicodeTokens` must be set to `true` to use `"+e+"` token; see: https://git.io/fxCyr")}var Ke=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Xe=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,$e=/^'(.*?)'?$/,Qe=/''/g;function Je(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var a=String(t),s=n||{},o=s.locale||ye,d=o.options&&o.options.firstWeekContainsDate,u=null==d?1:r(d),l=null==s.firstWeekContainsDate?u:r(s.firstWeekContainsDate);if(!(l>=1&&l<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var f=o.options&&o.options.weekStartsOn,c=null==f?0:r(f),m=null==s.weekStartsOn?c:r(s.weekStartsOn);if(!(m>=0&&m<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!o.localize)throw new RangeError("locale must contain localize property");if(!o.formatLong)throw new RangeError("locale must contain formatLong property");var p=i(e);if(!ce(p))throw new RangeError("Invalid time value");var B=g(p),h=He(p,B),S={firstWeekContainsDate:l,weekStartsOn:m,locale:o,_originalDate:p},v=a.match(Xe).map((function(e){var t=e[0];return"p"===t||"P"===t?(0,ze[t])(e,o.formatLong,S):e})).join("").match(Ke).map((function(e){if("''"===e)return"'";var t=e[0];if("'"===t)return et(e);var n=Ge[t];return n?(!s.awareOfUnicodeTokens&&Ye(e)&&Ze(e),n(h,e,o.localize,S)):e})).join("");return v}function et(e){return e.match($e)[1].replace(Qe,"'")}function tt(e,t){if(null==e)throw new TypeError("assign requires that input parameter not be null or undefined");for(var n in t=t||{})t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function nt(e){return tt({},e)}function rt(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=n||{},a=r.locale||ye;if(!a.formatDistance)throw new RangeError("locale must contain formatDistance property");var s=b(e,t);if(isNaN(s))throw new RangeError("Invalid time value");var o,d,u=nt(r);u.addSuffix=Boolean(r.addSuffix),u.comparison=s,s>0?(o=i(t),d=i(e)):(o=i(e),d=i(t));var l,f=z(d,o),c=(g(d)-g(o))/1e3,m=Math.round((f-c)/60);if(m<2)return r.includeSeconds?f<5?a.formatDistance("lessThanXSeconds",5,u):f<10?a.formatDistance("lessThanXSeconds",10,u):f<20?a.formatDistance("lessThanXSeconds",20,u):f<40?a.formatDistance("halfAMinute",null,u):f<60?a.formatDistance("lessThanXMinutes",1,u):a.formatDistance("xMinutes",1,u):0===m?a.formatDistance("lessThanXMinutes",1,u):a.formatDistance("xMinutes",m,u);if(m<45)return a.formatDistance("xMinutes",m,u);if(m<90)return a.formatDistance("aboutXHours",1,u);if(m<1440){var p=Math.round(m/60);return a.formatDistance("aboutXHours",p,u)}if(m<2520)return a.formatDistance("xDays",1,u);if(m<43200){var B=Math.round(m/1440);return a.formatDistance("xDays",B,u)}if(m<86400)return l=Math.round(m/43200),a.formatDistance("aboutXMonths",l,u);if((l=W(d,o))<12){var h=Math.round(m/43200);return a.formatDistance("xMonths",h,u)}var S=l%12,v=Math.floor(l/12);return S<3?a.formatDistance("aboutXYears",v,u):S<9?a.formatDistance("overXYears",v,u):a.formatDistance("almostXYears",v+1,u)}function it(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=n||{},a=r.locale||ye;if(!a.formatDistance)throw new RangeError("locale must contain localize.formatDistance property");var s=b(e,t);if(isNaN(s))throw new RangeError("Invalid time value");var o,d,u=nt(r);u.addSuffix=Boolean(r.addSuffix),u.comparison=s,s>0?(o=i(t),d=i(e)):(o=i(e),d=i(t));var l,f=null==r.roundingMethod?"round":String(r.roundingMethod);if("floor"===f)l=Math.floor;else if("ceil"===f)l=Math.ceil;else{if("round"!==f)throw new RangeError("roundingMethod must be 'floor', 'ceil' or 'round'");l=Math.round}var c,m=z(d,o),p=(g(d)-g(o))/1e3,B=l((m-p)/60);if("second"===(c=null==r.unit?B<1?"second":B<60?"minute":B<1440?"hour":B<43200?"day":B<525600?"month":"year":String(r.unit)))return a.formatDistance("xSeconds",m,u);if("minute"===c)return a.formatDistance("xMinutes",B,u);if("hour"===c){var h=l(B/60);return a.formatDistance("xHours",h,u)}if("day"===c){var S=l(B/1440);return a.formatDistance("xDays",S,u)}if("month"===c){var v=l(B/43200);return a.formatDistance("xMonths",v,u)}if("year"===c){var O=l(B/525600);return a.formatDistance("xYears",O,u)}throw new RangeError("unit must be 'second', 'minute', 'hour', 'day', 'month' or 'year'")}function at(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=i(e),a=i(t),s=n||{},o=s.locale||ye;if(!o.localize)throw new RangeError("locale must contain localize property");if(!o.formatLong)throw new RangeError("locale must contain formatLong property");if(!o.formatRelative)throw new RangeError("locale must contain formatRelative property");var d,u=m(r,a);if(isNaN(u))throw new RangeError("Invalid time value");d=u<-6?"other":u<-1?"lastWeek":u<0?"yesterday":u<1?"today":u<2?"tomorrow":u<7?"nextWeek":"other";var l=He(r,g(r)),f=He(a,g(a)),c=o.formatRelative(d,l,f,s);return Je(r,c,s)}function st(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=r(e);return i(1e3*t)}function ot(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getDate();return n}function dt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getDay();return n}function ut(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=m(t,te(t)),r=n+1;return r}function lt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear();return n%400==0||n%4==0&&n%100!=0}function ft(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return isNaN(t)?NaN:lt(t)?366:365}function gt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear(),r=10*Math.floor(n/10);return r}function ct(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getHours();return n}function mt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getDay();return 0===n&&(n=7),n}function pt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=u(t).getTime()-f(t).getTime();return Math.round(n/6048e5)+1}function Bt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=f(e),n=f(I(t,60)),r=n.valueOf()-t.valueOf();return Math.round(r/6048e5)}function ht(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMilliseconds();return n}function St(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMinutes();return n}function vt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMonth();return n}function Ot(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=e||{},r=t||{},a=i(n.start).getTime(),s=i(n.end).getTime(),o=i(r.start).getTime(),d=i(r.end).getTime();if(!(a<=s&&o<=d))throw new RangeError("Invalid interval");var u=a<d&&o<s;if(!u)return 0;var l=o<a?a:o,f=d>s?s:d,g=f-l;return Math.ceil(g/864e5)}function yt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getSeconds();return n}function It(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getTime();return n}function Lt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return Math.floor(It(e)/1e3)}function Nt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=i(e),a=n.getFullYear(),s=t||{},o=s.locale,u=o&&o.options&&o.options.firstWeekContainsDate,l=null==u?1:r(u),f=null==s.firstWeekContainsDate?l:r(s.firstWeekContainsDate);if(!(f>=1&&f<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var g=new Date(0);g.setFullYear(a+1,0,f),g.setHours(0,0,0,0);var c=d(g,t),m=new Date(0);m.setFullYear(a,0,f),m.setHours(0,0,0,0);var p=d(m,t);return n.getTime()>=c.getTime()?a+1:n.getTime()>=p.getTime()?a:a-1}function Tt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},i=n.locale,a=i&&i.options&&i.options.firstWeekContainsDate,s=null==a?1:r(a),o=null==n.firstWeekContainsDate?s:r(n.firstWeekContainsDate),u=Nt(e,t),l=new Date(0);l.setFullYear(u,0,o),l.setHours(0,0,0,0);var f=d(l,t);return f}function Dt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=i(e),r=d(n,t).getTime()-Tt(n,t).getTime();return Math.round(r/6048e5)+1}function bt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},i=n.locale,a=i&&i.options&&i.options.weekStartsOn,s=null==a?0:r(a),o=null==n.weekStartsOn?s:r(n.weekStartsOn);if(!(o>=0&&o<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var d=dt(Q(e)),u=dt(e),l=d<o?7-o:d,f=l>u?7-o:0;return Math.ceil((ot(e)+f)/7)}function Ct(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(0,0,0,0),t}function Rt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return A(Ct(e),Q(e),t)+1}function wt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear();return n}function Ft(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t);return n.getTime()>r.getTime()}function Mt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t);return n.getTime()<r.getTime()}function Pt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return e instanceof Date||"object"==typeof e&&"[object Date]"===Object.prototype.toString.call(e)}function At(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t);return n.getTime()===r.getTime()}function Et(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 1===i(e).getDate()}function kt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 5===i(e).getDay()}function _t(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return ie(t).getTime()===J(t).getTime()}function Ut(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 1===i(e).getDay()}function xt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=c(e),r=c(t);return n.getTime()===r.getTime()}function Vt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setMinutes(0,0,0),t}function Gt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Vt(e),r=Vt(t);return n.getTime()===r.getTime()}function Wt(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=d(e,n),i=d(t,n);return r.getTime()===i.getTime()}function qt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");return Wt(e,t,{weekStartsOn:1})}function zt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=f(e),r=f(t);return n.getTime()===r.getTime()}function Ht(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setSeconds(0,0),t}function jt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Ht(e),r=Ht(t);return n.getTime()===r.getTime()}function Yt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t);return n.getFullYear()===r.getFullYear()&&n.getMonth()===r.getMonth()}function Zt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMonth(),r=n-n%3;return t.setMonth(r,1),t.setHours(0,0,0,0),t}function Kt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Zt(e),r=Zt(t);return n.getTime()===r.getTime()}function Xt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e);return t.setMilliseconds(0),t}function $t(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Xt(e),r=Xt(t);return n.getTime()===r.getTime()}function Qt(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),r=i(t);return n.getFullYear()===r.getFullYear()}function Jt(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 6===i(e).getDay()}function en(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 4===i(e).getDay()}function tn(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 2===i(e).getDay()}function nn(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return 3===i(e).getDay()}function rn(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=t||{},r=i(e).getTime(),a=i(n.start).getTime(),s=i(n.end).getTime();if(!(a<=s))throw new RangeError("Invalid interval");return r>=a&&r<=s}function an(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear(),r=9+10*Math.floor(n/10);return t.setFullYear(r+1,0,0),t.setHours(0,0,0,0),t}function sn(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},a=n.locale,s=a&&a.options&&a.options.weekStartsOn,o=null==s?0:r(s),d=null==n.weekStartsOn?o:r(n.weekStartsOn);if(!(d>=0&&d<=6))throw new RangeError("weekStartsOn must be between 0 and 6");var u=i(e),l=u.getDay(),f=6+(l<d?-7:0)-(l-d);return u.setHours(0,0,0,0),u.setDate(u.getDate()+f),u}function on(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");return sn(e,{weekStartsOn:1})}function dn(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=l(e),n=new Date(0);n.setFullYear(t+1,0,4),n.setHours(0,0,0,0);var r=u(n);return r.setDate(r.getDate()-1),r}function un(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getMonth(),r=n-n%3+3;return t.setMonth(r,0),t.setHours(0,0,0,0),t}function ln(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear();return t.setFullYear(n+1,0,0),t.setHours(0,0,0,0),t}var fn=/(\w)\1*|''|'(''|[^'])+('|$)|./g,gn=/^'(.*?)'?$/,cn=/''/g;function mn(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=String(t),r=i(e);if(!ce(r))throw new RangeError("Invalid time value");var a=g(r),s=He(r,a),o=n.match(fn).map((function(e){if("''"===e)return"'";var t=e[0];if("'"===t)return pn(e);var n=Le[t];return n?n(s,e,null,{}):e})).join("");return o}function pn(e){return e.match(gn)[1].replace(cn,"'")}function Bn(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t;return(null==e?[]:"function"==typeof e.forEach?e:Array.prototype.slice.call(e)).forEach((function(e){var n=i(e);(void 0===t||t<n||isNaN(n))&&(t=n)})),t}function hn(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t;return(null==e?[]:"function"==typeof e.forEach?e:Array.prototype.slice.call(e)).forEach((function(e){var n=i(e);(void 0===t||t>n||isNaN(n))&&(t=n)})),t}function Sn(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var a=n||{},s=a.locale,o=s&&s.options&&s.options.weekStartsOn,d=null==o?0:r(o),u=null==a.weekStartsOn?d:r(a.weekStartsOn);if(!(u>=0&&u<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var l=i(e),f=r(t),g=l.getUTCDay(),c=f%7,m=(c+7)%7,p=(m<u?7:0)+f-g;return l.setUTCDate(l.getUTCDate()+p),l}var vn=/^(1[0-2]|0?\d)/,On=/^(3[0-1]|[0-2]?\d)/,yn=/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,In=/^(5[0-3]|[0-4]?\d)/,Ln=/^(2[0-3]|[0-1]?\d)/,Nn=/^(2[0-4]|[0-1]?\d)/,Tn=/^(1[0-1]|0?\d)/,Dn=/^(1[0-2]|0?\d)/,bn=/^[0-5]?\d/,Cn=/^[0-5]?\d/,Rn=/^\d/,wn=/^\d{1,2}/,Fn=/^\d{1,3}/,Mn=/^\d{1,4}/,Pn=/^-?\d+/,An=/^-?\d/,En=/^-?\d{1,2}/,kn=/^-?\d{1,3}/,_n=/^-?\d{1,4}/,Un=/^([+-])(\d{2})(\d{2})?|Z/,xn=/^([+-])(\d{2})(\d{2})|Z/,Vn=/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,Gn=/^([+-])(\d{2}):(\d{2})|Z/,Wn=/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/;function qn(e,t,n){var r=t.match(e);if(!r)return null;var i=parseInt(r[0],10);return{value:n?n(i):i,rest:t.slice(r[0].length)}}function zn(e,t){var n=t.match(e);return n?"Z"===n[0]?{value:0,rest:t.slice(1)}:{value:("+"===n[1]?1:-1)*(36e5*(n[2]?parseInt(n[2],10):0)+6e4*(n[3]?parseInt(n[3],10):0)+1e3*(n[5]?parseInt(n[5],10):0)),rest:t.slice(n[0].length)}:null}function Hn(e,t){return qn(Pn,e,t)}function jn(e,t,n){switch(e){case 1:return qn(Rn,t,n);case 2:return qn(wn,t,n);case 3:return qn(Fn,t,n);case 4:return qn(Mn,t,n);default:return qn(new RegExp("^\\d{1,"+e+"}"),t,n)}}function Yn(e,t,n){switch(e){case 1:return qn(An,t,n);case 2:return qn(En,t,n);case 3:return qn(kn,t,n);case 4:return qn(_n,t,n);default:return qn(new RegExp("^-?\\d{1,"+e+"}"),t,n)}}function Zn(e){switch(e){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;case"am":case"midnight":case"night":default:return 0}}function Kn(e,t){var n,r=t>0,i=r?t:1-t;if(i<=50)n=e||100;else{var a=i+50;n=e+100*Math.floor(a/100)-(e>=a%100?100:0)}return r?n:1-n}var Xn=[31,28,31,30,31,30,31,31,30,31,30,31],$n=[31,29,31,30,31,30,31,31,30,31,30,31];function Qn(e){return e%400==0||e%4==0&&e%100!=0}var Jn={G:{priority:140,parse:function(e,t,n,r){switch(t){case"G":case"GG":case"GGG":return n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"});case"GGGGG":return n.era(e,{width:"narrow"});case"GGGG":default:return n.era(e,{width:"wide"})||n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"})}},set:function(e,t,n,r){return e.setUTCFullYear(1===n?10:-9,0,1),e.setUTCHours(0,0,0,0),e}},y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"yy"===t}};switch(t){case"y":return jn(4,e,i);case"yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return jn(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n,r){var i=Re(e,r);if(n.isTwoDigitYear){var a=Kn(n.year,i);return e.setUTCFullYear(a,0,1),e.setUTCHours(0,0,0,0),e}var s=i>0?n.year:1-n.year;return e.setUTCFullYear(s,0,1),e.setUTCHours(0,0,0,0),e}},Y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"YY"===t}};switch(t){case"Y":return jn(4,e,i);case"Yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return jn(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n,r){var i=e.getUTCFullYear();if(n.isTwoDigitYear){var a=Kn(n.year,i);return e.setUTCFullYear(a,0,r.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Ce(e,r)}var s=i>0?n.year:1-n.year;return e.setUTCFullYear(s,0,r.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Ce(e,r)}},R:{priority:130,parse:function(e,t,n,r){return Yn("R"===t?4:t.length,e)},set:function(e,t,n,r){var i=new Date(0);return i.setUTCFullYear(n,0,4),i.setUTCHours(0,0,0,0),Ne(i)}},u:{priority:130,parse:function(e,t,n,r){return Yn("u"===t?4:t.length,e)},set:function(e,t,n,r){return e.setUTCFullYear(n,0,1),e.setUTCHours(0,0,0,0),e}},Q:{priority:120,parse:function(e,t,n,r){switch(t){case"Q":case"QQ":return jn(t.length,e);case"Qo":return n.ordinalNumber(e,{unit:"quarter"});case"QQQ":return n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"});case"QQQQQ":return n.quarter(e,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(e,{width:"wide",context:"formatting"})||n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n,r){return e.setUTCMonth(3*(n-1),1),e.setUTCHours(0,0,0,0),e}},q:{priority:120,parse:function(e,t,n,r){switch(t){case"q":case"qq":return jn(t.length,e);case"qo":return n.ordinalNumber(e,{unit:"quarter"});case"qqq":return n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"});case"qqqqq":return n.quarter(e,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(e,{width:"wide",context:"standalone"})||n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n,r){return e.setUTCMonth(3*(n-1),1),e.setUTCHours(0,0,0,0),e}},M:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"M":return qn(vn,e,i);case"MM":return jn(2,e,i);case"Mo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"MMM":return n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"});case"MMMMM":return n.month(e,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(e,{width:"wide",context:"formatting"})||n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){return e.setUTCMonth(n,1),e.setUTCHours(0,0,0,0),e}},L:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"L":return qn(vn,e,i);case"LL":return jn(2,e,i);case"Lo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"LLL":return n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"});case"LLLLL":return n.month(e,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(e,{width:"wide",context:"standalone"})||n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){return e.setUTCMonth(n,1),e.setUTCHours(0,0,0,0),e}},w:{priority:100,parse:function(e,t,n,r){switch(t){case"w":return qn(In,e);case"wo":return n.ordinalNumber(e,{unit:"week"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n,a){return Ce(function(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var a=i(e),s=r(t),o=Fe(a,n)-s;return a.setUTCDate(a.getUTCDate()-7*o),a}(e,n,a),a)}},I:{priority:100,parse:function(e,t,n,r){switch(t){case"I":return qn(In,e);case"Io":return n.ordinalNumber(e,{unit:"week"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n,a){return Ne(function(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t),s=be(n)-a;return n.setUTCDate(n.getUTCDate()-7*s),n}(e,n,a),a)}},d:{priority:90,parse:function(e,t,n,r){switch(t){case"d":return qn(On,e);case"do":return n.ordinalNumber(e,{unit:"date"});default:return jn(t.length,e)}},validate:function(e,t,n){var r=Qn(e.getUTCFullYear()),i=e.getUTCMonth();return r?t>=1&&t<=$n[i]:t>=1&&t<=Xn[i]},set:function(e,t,n,r){return e.setUTCDate(n),e.setUTCHours(0,0,0,0),e}},D:{priority:90,parse:function(e,t,n,r){switch(t){case"D":case"DD":return qn(yn,e);case"Do":return n.ordinalNumber(e,{unit:"date"});default:return jn(t.length,e)}},validate:function(e,t,n){return Qn(e.getUTCFullYear())?t>=1&&t<=366:t>=1&&t<=365},set:function(e,t,n,r){return e.setUTCMonth(0,n),e.setUTCHours(0,0,0,0),e}},E:{priority:90,parse:function(e,t,n,r){switch(t){case"E":case"EE":case"EEE":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"EEEEE":return n.day(e,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"EEEE":default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return(e=Sn(e,n,r)).setUTCHours(0,0,0,0),e}},e:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"e":case"ee":return jn(t.length,e,i);case"eo":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"eee":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"eeeee":return n.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"eeee":default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return(e=Sn(e,n,r)).setUTCHours(0,0,0,0),e}},c:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"c":case"cc":return jn(t.length,e,i);case"co":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"ccc":return n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});case"ccccc":return n.day(e,{width:"narrow",context:"standalone"});case"cccccc":return n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});case"cccc":default:return n.day(e,{width:"wide",context:"standalone"})||n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return(e=Sn(e,n,r)).setUTCHours(0,0,0,0),e}},i:{priority:90,parse:function(e,t,n,r){var i=function(e){return 0===e?7:e};switch(t){case"i":case"ii":return jn(t.length,e);case"io":return n.ordinalNumber(e,{unit:"day"});case"iii":return n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiii":return n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiiii":return n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiii":default:return n.day(e,{width:"wide",context:"formatting",valueCallback:i})||n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i})}},validate:function(e,t,n){return t>=1&&t<=7},set:function(e,t,n,a){return(e=function(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);n%7==0&&(n-=7);var a=1,s=i(e),o=s.getUTCDay(),d=n%7,u=(d+7)%7,l=(u<a?7:0)+n-o;return s.setUTCDate(s.getUTCDate()+l),s}(e,n,a)).setUTCHours(0,0,0,0),e}},a:{priority:80,parse:function(e,t,n,r){switch(t){case"a":case"aa":case"aaa":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaaa":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(Zn(n),0,0,0),e}},b:{priority:80,parse:function(e,t,n,r){switch(t){case"b":case"bb":case"bbb":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbbb":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(Zn(n),0,0,0),e}},B:{priority:80,parse:function(e,t,n,r){switch(t){case"B":case"BB":case"BBB":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBBB":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(Zn(n),0,0,0),e}},h:{priority:70,parse:function(e,t,n,r){switch(t){case"h":return qn(Dn,e);case"ho":return n.ordinalNumber(e,{unit:"hour"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=12},set:function(e,t,n,r){var i=e.getUTCHours()>=12;return i&&n<12?e.setUTCHours(n+12,0,0,0):i||12!==n?e.setUTCHours(n,0,0,0):e.setUTCHours(0,0,0,0),e}},H:{priority:70,parse:function(e,t,n,r){switch(t){case"H":return qn(Ln,e);case"Ho":return n.ordinalNumber(e,{unit:"hour"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=23},set:function(e,t,n,r){return e.setUTCHours(n,0,0,0),e}},K:{priority:70,parse:function(e,t,n,r){switch(t){case"K":return qn(Tn,e);case"Ko":return n.ordinalNumber(e,{unit:"hour"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){return e.getUTCHours()>=12&&n<12?e.setUTCHours(n+12,0,0,0):e.setUTCHours(n,0,0,0),e}},k:{priority:70,parse:function(e,t,n,r){switch(t){case"k":return qn(Nn,e);case"ko":return n.ordinalNumber(e,{unit:"hour"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=24},set:function(e,t,n,r){var i=n<=24?n%24:n;return e.setUTCHours(i,0,0,0),e}},m:{priority:60,parse:function(e,t,n,r){switch(t){case"m":return qn(bn,e);case"mo":return n.ordinalNumber(e,{unit:"minute"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n,r){return e.setUTCMinutes(n,0,0),e}},s:{priority:50,parse:function(e,t,n,r){switch(t){case"s":return qn(Cn,e);case"so":return n.ordinalNumber(e,{unit:"second"});default:return jn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n,r){return e.setUTCSeconds(n,0),e}},S:{priority:30,parse:function(e,t,n,r){return jn(t.length,e,(function(e){return Math.floor(e*Math.pow(10,3-t.length))}))},set:function(e,t,n,r){return e.setUTCMilliseconds(n),e}},X:{priority:10,parse:function(e,t,n,r){switch(t){case"X":return zn(Un,e);case"XX":return zn(xn,e);case"XXXX":return zn(Vn,e);case"XXXXX":return zn(Wn,e);case"XXX":default:return zn(Gn,e)}},set:function(e,t,n,r){return t.timestampIsSet?e:new Date(e.getTime()-n)}},x:{priority:10,parse:function(e,t,n,r){switch(t){case"x":return zn(Un,e);case"xx":return zn(xn,e);case"xxxx":return zn(Vn,e);case"xxxxx":return zn(Wn,e);case"xxx":default:return zn(Gn,e)}},set:function(e,t,n,r){return t.timestampIsSet?e:new Date(e.getTime()-n)}},t:{priority:40,parse:function(e,t,n,r){return Hn(e)},set:function(e,t,n,r){return[new Date(1e3*n),{timestampIsSet:!0}]}},T:{priority:20,parse:function(e,t,n,r){return Hn(e)},set:function(e,t,n,r){return[new Date(n),{timestampIsSet:!0}]}}},er=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,tr=/^'(.*?)'?$/,nr=/''/g,rr=/\S/;function ir(e,t,n,a){if(arguments.length<3)throw new TypeError("3 arguments required, but only "+arguments.length+" present");var s=String(e),o=String(t),d=a||{},u=d.locale||ye;if(!u.match)throw new RangeError("locale must contain match property");var l=u.options&&u.options.firstWeekContainsDate,f=null==l?1:r(l),c=null==d.firstWeekContainsDate?f:r(d.firstWeekContainsDate);if(!(c>=1&&c<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var m=u.options&&u.options.weekStartsOn,p=null==m?0:r(m),B=null==d.weekStartsOn?p:r(d.weekStartsOn);if(!(B>=0&&B<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(""===o)return""===s?i(n):new Date(NaN);var h,S={firstWeekContainsDate:c,weekStartsOn:B,locale:u},v=[{priority:10,set:ar,index:0}],O=o.match(er);for(h=0;h<O.length;h++){var y=O[h];!d.awareOfUnicodeTokens&&Ye(y)&&Ze(y);var I=y[0],L=Jn[I];if(L){var N=L.parse(s,y,u.match,S);if(!N)return new Date(NaN);v.push({priority:L.priority,set:L.set,validate:L.validate,value:N.value,index:v.length}),s=N.rest}else{if("''"===y?y="'":"'"===I&&(y=sr(y)),0!==s.indexOf(y))return new Date(NaN);s=s.slice(y.length)}}if(s.length>0&&rr.test(s))return new Date(NaN);var T=v.map((function(e){return e.priority})).sort((function(e,t){return t-e})).filter((function(e,t,n){return n.indexOf(e)===t})).map((function(e){return v.filter((function(t){return t.priority===e})).reverse()})).map((function(e){return e[0]})),D=i(n);if(isNaN(D))return new Date(NaN);var b=He(D,g(D)),C={};for(h=0;h<T.length;h++){var R=T[h];if(R.validate&&!R.validate(b,R.value,S))return new Date(NaN);var w=R.set(b,C,R.value,S);w[0]?(b=w[0],tt(C,w[1])):b=w}return b}function ar(e,t){if(t.timestampIsSet)return e;var n=new Date(0);return n.setFullYear(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()),n.setHours(e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()),n}function sr(e){return e.match(tr)[1].replace(nr,"'")}var or={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},dr=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,ur=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,lr=/^([+-])(\d{2})(?::?(\d{2}))?$/;function fr(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},i=null==n.additionalDigits?2:r(n.additionalDigits);if(2!==i&&1!==i&&0!==i)throw new RangeError("additionalDigits must be 0, 1 or 2");if("string"!=typeof e&&"[object String]"!==Object.prototype.toString.call(e))return new Date(NaN);var a=gr(e),s=cr(a.date,i),o=mr(s.restDateString,s.year);if(isNaN(o)||!o)return new Date(NaN);var d,u=o.getTime(),l=0;if(a.time&&(l=Br(a.time),isNaN(l)))return new Date(NaN);if(a.timezone){if(d=Sr(a.timezone),isNaN(d))return new Date(NaN)}else{var f=u+l,c=new Date(f);d=g(c);var m=new Date(f);m.setDate(c.getDate()+1);var p=g(m)-d;p>0&&(d+=p)}return new Date(u+l+d)}function gr(e){var t,n={},r=e.split(or.dateTimeDelimiter);if(/:/.test(r[0])?(n.date=null,t=r[0]):(n.date=r[0],t=r[1],or.timeZoneDelimiter.test(n.date)&&(n.date=e.split(or.timeZoneDelimiter)[0],t=e.substr(n.date.length,e.length))),t){var i=or.timezone.exec(t);i?(n.time=t.replace(i[1],""),n.timezone=i[1]):n.time=t}return n}function cr(e,t){var n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),r=e.match(n);if(!r)return{year:null};var i=r[1]&&parseInt(r[1]),a=r[2]&&parseInt(r[2]);return{year:null==a?i:100*a,restDateString:e.slice((r[1]||r[2]).length)}}function mr(e,t){if(null===t)return null;var n=e.match(dr);if(!n)return null;var r=!!n[4],i=pr(n[1]),a=pr(n[2])-1,s=pr(n[3]),o=pr(n[4])-1,d=pr(n[5])-1;if(r)return function(e,t,n){return!(t<0||t>52||n<0||n>6)}(0,o,d)?function(e,t,n){var r=new Date(0);r.setUTCFullYear(e,0,4);var i=r.getUTCDay()||7,a=7*(t||0)+(n||0)+1-i;return r.setUTCDate(r.getUTCDate()+a),r}(t,o,d):new Date(NaN);var u=new Date(0);return function(e,t,n){return!(t<0||t>11||n<1||n>(vr[t]||(Or(e)?29:28)))}(t,a,s)&&function(e,t){return!(t<1||t>(Or(e)?366:365))}(t,i)?(u.setUTCFullYear(t,a,Math.max(i,s)),u):new Date(NaN)}function pr(e){return e?parseInt(e):1}function Br(e){var t=e.match(ur);if(!t)return null;var n=hr(t[1]),r=hr(t[2]),i=hr(t[3]);return function(e,t,n){return!(n<0||n>=60||t<0||t>=60||e<0||e>=25)}(n,r,i)?n%24*36e5+6e4*r+1e3*i:NaN}function hr(e){return e&&parseFloat(e.replace(",","."))||0}function Sr(e){if("Z"===e)return 0;var t=e.match(lr);if(!t)return 0;var n="+"===t[1]?-1:1,r=parseInt(t[2]),i=t[3]&&parseInt(t[3])||0;return function(e,t){return!(t<0||t>59)}(0,i)?n*(36e5*r+6e4*i):NaN}var vr=[31,null,31,30,31,30,31,31,30,31,30,31];function Or(e){return e%400==0||e%4==0&&e%100}function yr(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only none provided present");var n=t&&"nearestTo"in t?r(t.nearestTo):1;if(n<1||n>30)throw new RangeError("`options.nearestTo` must be between 1 and 30");var a=i(e),s=a.getSeconds(),o=a.getMinutes()+s/60,d=Math.floor(o/n)*n,u=o%n,l=Math.round(u/n)*n;return new Date(a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),d+l)}function Ir(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return n.setDate(a),n}function Lr(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var s=n||{},o=s.locale,d=o&&o.options&&o.options.weekStartsOn,u=null==d?0:r(d),l=null==s.weekStartsOn?u:r(s.weekStartsOn);if(!(l>=0&&l<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var f=i(e,s),g=r(t),c=f.getDay(),m=g%7,p=(m+7)%7,B=(p<l?7:0)+g-c;return a(f,B,s)}function Nr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return n.setMonth(0),n.setDate(a),n}function Tr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return n.setHours(a),n}function Dr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),s=r(t),o=mt(n),d=s-o;return a(n,d)}function br(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t),s=pt(n)-a;return n.setDate(n.getDate()-7*s),n}function Cr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return n.setMilliseconds(a),n}function Rr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return n.setMinutes(a),n}function wr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t),s=n.getFullYear(),o=n.getDate(),d=new Date(0);d.setFullYear(s,a,15),d.setHours(0,0,0,0);var u=S(d);return n.setMonth(a,Math.min(o,u)),n}function Fr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t),s=Math.floor(n.getMonth()/3)+1,o=a-s;return wr(n,n.getMonth()+3*o)}function Mr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return n.setSeconds(a),n}function Pr(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var a=i(e),s=r(t),o=Dt(a,n)-s;return a.setDate(a.getDate()-7*o),a}function Ar(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var a=n||{},s=a.locale,o=s&&s.options&&s.options.firstWeekContainsDate,d=null==o?1:r(o),u=null==a.firstWeekContainsDate?d:r(a.firstWeekContainsDate),l=i(e),f=r(t),g=m(l,Tt(l,n)),c=new Date(0);return c.setFullYear(f,0,u),c.setHours(0,0,0,0),(l=Tt(c,n)).setDate(l.getDate()+g),l}function Er(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=i(e),a=r(t);return isNaN(n)?new Date(NaN):(n.setFullYear(a),n)}function kr(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=i(e),n=t.getFullYear(),r=10*Math.floor(n/10);return t.setFullYear(r,0,1),t.setHours(0,0,0,0),t}function _r(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return a(e,-n)}function Ur(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return o(e,-n)}function xr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return h(e,-n)}function Vr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return v(e,-n)}function Gr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return O(e,-n)}function Wr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return y(e,-n)}function qr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return I(e,-n)}function zr(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=r(t);return L(e,-n)}},function(e,t,n){(function(e){const t=n(8).Parser,{pgnToYdgwRawFormat:r,actisenseToYdgwRawFormat:i,pgnToPCDIN:a,actisenseToPCDIN:s,pgnToiKonvertSerialFormat:o,actisenseToiKonvert:d,pgnToMXPGN:u,actisenseToMXPGN:l}=n(32),f=new t({});e.parseYDGW02=e=>f.parseYDGW02(e),e.parseVenusMQTT=e=>f.parseVenusMQTT(e),e.parseString=e=>f.parseString(e),e.actisenseToYdgwRawFormat=i,e.pgnToYdgwRawFormat=r,e.pgnToPCDIN=a,e.actisenseToPCDIN=s,e.pgnToMXPGN=u,e.actisenseToMXPGN=l,e.pgnToiKonvertSerialFormat=o,e.actisenseToiKonvert=d,e.parsePCDIN=e=>f.parseN2KOver0183(e),e.parseMXPGN=e=>f.parseN2KOver0183(e),e.parseHelmSmart=e.parsePCDIN,e.isN2KOver0183=e=>f.isN2KOver0183(e),e.parseN2KOver0183=e=>f.parseN2KOver0183(e),e.parsePDGY=e=>{if(e.startsWith("!PDGY"))return f.parsePDGY(e)}}).call(this,n(2))},function(e,t,n){"use strict";t.byteLength=function(e){var t=u(e),n=t[0],r=t[1];return 3*(n+r)/4-r},t.toByteArray=function(e){var t,n,r=u(e),s=r[0],o=r[1],d=new a(function(e,t,n){return 3*(t+n)/4-n}(0,s,o)),l=0,f=o>0?s-4:s;for(n=0;n<f;n+=4)t=i[e.charCodeAt(n)]<<18|i[e.charCodeAt(n+1)]<<12|i[e.charCodeAt(n+2)]<<6|i[e.charCodeAt(n+3)],d[l++]=t>>16&255,d[l++]=t>>8&255,d[l++]=255&t;2===o&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,d[l++]=255&t);1===o&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,d[l++]=t>>8&255,d[l++]=255&t);return d},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],s=0,o=n-i;s<o;s+=16383)a.push(l(e,s,s+16383>o?o:s+16383));1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return a.join("")};for(var r=[],i=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,d=s.length;o<d;++o)r[o]=s[o],i[s.charCodeAt(o)]=o;function u(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var i,a,s=[],o=t;o<n;o+=3)i=(e[o]<<16&16711680)+(e[o+1]<<8&65280)+(255&e[o+2]),s.push(r[(a=i)>>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return s.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){
|
|
17
|
-
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
|
18
|
-
t.read=function(e,t,n,r,i){var a,s,o=8*i-r-1,d=(1<<o)-1,u=d>>1,l=-7,f=n?i-1:0,g=n?-1:1,c=e[t+f];for(f+=g,a=c&(1<<-l)-1,c>>=-l,l+=o;l>0;a=256*a+e[t+f],f+=g,l-=8);for(s=a&(1<<-l)-1,a>>=-l,l+=r;l>0;s=256*s+e[t+f],f+=g,l-=8);if(0===a)a=1-u;else{if(a===d)return s?NaN:1/0*(c?-1:1);s+=Math.pow(2,r),a-=u}return(c?-1:1)*s*Math.pow(2,a-r)},t.write=function(e,t,n,r,i,a){var s,o,d,u=8*a-i-1,l=(1<<u)-1,f=l>>1,g=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,c=r?0:a-1,m=r?1:-1,p=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,s=l):(s=Math.floor(Math.log(t)/Math.LN2),t*(d=Math.pow(2,-s))<1&&(s--,d*=2),(t+=s+f>=1?g/d:g*Math.pow(2,1-f))*d>=2&&(s++,d/=2),s+f>=l?(o=0,s=l):s+f>=1?(o=(t*d-1)*Math.pow(2,i),s+=f):(o=t*Math.pow(2,f-1)*Math.pow(2,i),s=0));i>=8;e[n+c]=255&o,c+=m,o/=256,i-=8);for(s=s<<i|o,u+=i;u>0;e[n+c]=255&s,c+=m,s/=256,u-=8);e[n+c-m]|=128*p}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t){var n,r,i=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function o(e){if(n===setTimeout)return setTimeout(e,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(e){n=a}try{r="function"==typeof clearTimeout?clearTimeout:s}catch(e){r=s}}();var d,u=[],l=!1,f=-1;function g(){l&&d&&(l=!1,d.length?u=d.concat(u):f=-1,u.length&&c())}function c(){if(!l){var e=o(g);l=!0;for(var t=u.length;t;){for(d=u,u=[];++f<t;)d&&d[f].run();f=-1,t=u.length}d=null,l=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===s||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function m(e,t){this.fun=e,this.array=t}function p(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new m(e,t)),1!==u.length||l||o(c)},m.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=p,i.addListener=p,i.once=p,i.off=p,i.removeListener=p,i.removeAllListeners=p,i.emit=p,i.prependListener=p,i.prependOnceListener=p,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,n){e.exports=function(e){function t(e){let n,i=null;function a(...e){if(!a.enabled)return;const r=a,i=Number(new Date),s=i-(n||i);r.diff=s,r.prev=n,r.curr=i,n=i,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let o=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(n,i)=>{if("%%"===n)return"%";o++;const a=t.formatters[i];if("function"==typeof a){const t=e[o];n=a.call(r,t),e.splice(o,1),o--}return n}),t.formatArgs.call(r,e);(r.log||t.log).apply(r,e)}return a.namespace=e,a.useColors=t.useColors(),a.color=t.selectColor(e),a.extend=r,a.destroy=t.destroy,Object.defineProperty(a,"enabled",{enumerable:!0,configurable:!1,get:()=>null===i?t.enabled(e):i,set:e=>{i=e}}),"function"==typeof t.init&&t.init(a),a}function r(e,n){const r=t(this.namespace+(void 0===n?":":n)+e);return r.log=this.log,r}function i(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(e){if(e instanceof Error)return e.stack||e.message;return e},t.disable=function(){const e=[...t.names.map(i),...t.skips.map(i).map(e=>"-"+e)].join(",");return t.enable(""),e},t.enable=function(e){let n;t.save(e),t.names=[],t.skips=[];const r=("string"==typeof e?e:"").split(/[\s,]+/),i=r.length;for(n=0;n<i;n++)r[n]&&("-"===(e=r[n].replace(/\*/g,".*?"))[0]?t.skips.push(new RegExp("^"+e.substr(1)+"$")):t.names.push(new RegExp("^"+e+"$")))},t.enabled=function(e){if("*"===e[e.length-1])return!0;let n,r;for(n=0,r=t.skips.length;n<r;n++)if(t.skips[n].test(e))return!1;for(n=0,r=t.names.length;n<r;n++)if(t.names[n].test(e))return!0;return!1},t.humanize=n(21),t.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach(n=>{t[n]=e[n]}),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let n=0;for(let t=0;t<e.length;t++)n=(n<<5)-n+e.charCodeAt(t),n|=0;return t.colors[Math.abs(n)%t.colors.length]},t.enable(t.load()),t}},function(e,t){var n=1e3,r=6e4,i=60*r,a=24*i;function s(e,t,n,r){var i=t>=1.5*n;return Math.round(e/n)+" "+r+(i?"s":"")}e.exports=function(e,t){t=t||{};var o=typeof e;if("string"===o&&e.length>0)return function(e){if((e=String(e)).length>100)return;var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(!t)return;var s=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*s;case"weeks":case"week":case"w":return 6048e5*s;case"days":case"day":case"d":return s*a;case"hours":case"hour":case"hrs":case"hr":case"h":return s*i;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*n;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}(e);if("number"===o&&isFinite(e))return t.long?function(e){var t=Math.abs(e);if(t>=a)return s(e,t,a,"day");if(t>=i)return s(e,t,i,"hour");if(t>=r)return s(e,t,r,"minute");if(t>=n)return s(e,t,n,"second");return e+" ms"}(e):function(e){var t=Math.abs(e);if(t>=a)return Math.round(e/a)+"d";if(t>=i)return Math.round(e/i)+"h";if(t>=r)return Math.round(e/r)+"m";if(t>=n)return Math.round(e/n)+"s";return e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},function(e,t,n){"use strict";var r,i="object"==typeof Reflect?Reflect:null,a=i&&"function"==typeof i.apply?i.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};r=i&&"function"==typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!=e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(n,r){function i(){void 0!==a&&e.removeListener("error",a),n([].slice.call(arguments))}var a;"error"!==t&&(a=function(n){e.removeListener(t,i),r(n)},e.once("error",a)),e.once(t,i)}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var d=10;function u(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function l(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function f(e,t,n,r){var i,a,s,o;if(u(n),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),a=e._events),s=a[t]),void 0===s)s=a[t]=n,++e._eventsCount;else if("function"==typeof s?s=a[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),(i=l(e))>0&&s.length>i&&!s.warned){s.warned=!0;var d=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");d.name="MaxListenersExceededWarning",d.emitter=e,d.type=t,d.count=s.length,o=d,console&&console.warn&&console.warn(o)}return e}function g(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function c(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=g.bind(r);return i.listener=n,r.wrapFn=i,i}function m(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(i):B(i,i.length)}function p(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function B(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}Object.defineProperty(o,"defaultMaxListeners",{enumerable:!0,get:function(){return d},set:function(e){if("number"!=typeof e||e<0||s(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");d=e}}),o.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},o.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||s(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},o.prototype.getMaxListeners=function(){return l(this)},o.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var r="error"===e,i=this._events;if(void 0!==i)r=r&&void 0===i.error;else if(!r)return!1;if(r){var s;if(t.length>0&&(s=t[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var d=i[e];if(void 0===d)return!1;if("function"==typeof d)a(d,this,t);else{var u=d.length,l=B(d,u);for(n=0;n<u;++n)a(l[n],this,t)}return!0},o.prototype.addListener=function(e,t){return f(this,e,t,!1)},o.prototype.on=o.prototype.addListener,o.prototype.prependListener=function(e,t){return f(this,e,t,!0)},o.prototype.once=function(e,t){return u(t),this.on(e,c(this,e,t)),this},o.prototype.prependOnceListener=function(e,t){return u(t),this.prependListener(e,c(this,e,t)),this},o.prototype.removeListener=function(e,t){var n,r,i,a,s;if(u(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,a=n.length-1;a>=0;a--)if(n[a]===t||n[a].listener===t){s=n[a].listener,i=a;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,s||t)}return this},o.prototype.off=o.prototype.removeListener,o.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,a=Object.keys(n);for(r=0;r<a.length;++r)"removeListener"!==(i=a[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},o.prototype.listeners=function(e){return m(this,e,!0)},o.prototype.rawListeners=function(e){return m(this,e,!1)},o.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},o.prototype.listenerCount=p,o.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e){e.exports=JSON.parse('{"name":"@canboat/canboatjs","version":"1.20.1","description":"Native javascript version of canboat","main":"index.js","scripts":{"dev-test":"jest --watch","test":"jest && mocha --exit","create-release":"github-create-release --owner canboat --repository canboatjs","release":"git tag -d v$npm_package_version && git tag v$npm_package_version && git push --tags && git push && npm run create-release","build_ios":"webpack ios.js -o ios_canboat.js"},"bin":{"analyzerjs":"./bin/analyzerjs","to-pgn":"./bin/to-pgn","candumpanalyzerjs":"./bin/candumpanalyzerjs","actisense-serialjs":"./bin/actisense-serialjs","actisense-file":"./bin/actisense-file"},"jest":{"rootDir":"lib"},"keywords":["boat","bus","can","canboat","k","marine","nmea2000","parser","pgn","signalk","signal"],"author":"Scott Bender <scott@scottbender.net>","contributors":[{"name":"Kees Verruijt","email":"kees@verruijt.net"},{"name":"Teppo Kurki","email":"teppo.kurki@iki.fi"},{"name":"Jouni Hartikainen","email":"jouni.hartikainen@iki.fi"}],"license":"Apache-2.0","dependencies":{"@canboat/pgns":"^1.4.0","bit-buffer":"0.2.3","date-fns":"2.0.0-alpha.27","debug":"^4.1.1","dnssd":"^0.4.1","int64-buffer":"^0.1.10","lodash":"^4.17.4","minimist":"^1.2.0","mqtt":"^2.18.8","split":"^1.0.1"},"devDependencies":{"@signalk/github-create-release":"^1.0.1","chai":"^4.1.2","chai-json-equal":"0.0.1","chai-string":"^1.5.0","chai-things":"^0.2.0","jest":"^24.7.1","mocha":"^5.0.0","moment":"^2.24.0","webpack":"^4.41.5","webpack-cli":"^3.3.10"},"optionalDependencies":{"serialport":"^7.1.5","socketcan":"^2.2.2"},"repository":{"type":"git","url":"https://github.com/canboat/canboatjs.git"}}')},function(e,t,n){(function(e,r){var i;
|
|
19
|
-
/**
|
|
20
|
-
* @license
|
|
21
|
-
* Lodash <https://lodash.com/>
|
|
22
|
-
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
|
23
|
-
* Released under MIT license <https://lodash.com/license>
|
|
24
|
-
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
|
25
|
-
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
|
26
|
-
*/(function(){function a(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function s(e,t,n,r){for(var i=-1,a=null==e?0:e.length;++i<a;){var s=e[i];t(r,s,n(s),e)}return r}function o(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function d(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function u(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function l(e,t){for(var n=-1,r=null==e?0:e.length,i=0,a=[];++n<r;){var s=e[n];t(s,n,e)&&(a[i++]=s)}return a}function f(e,t){return!(null==e||!e.length)&&y(e,t,0)>-1}function g(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}function c(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}function m(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function p(e,t,n,r){var i=-1,a=null==e?0:e.length;for(r&&a&&(n=e[++i]);++i<a;)n=t(n,e[i],i,e);return n}function B(e,t,n,r){var i=null==e?0:e.length;for(r&&i&&(n=e[--i]);i--;)n=t(n,e[i],i,e);return n}function h(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function S(e){return e.match(Ke)||[]}function v(e,t,n){var r;return n(e,(function(e,n,i){if(t(e,n,i))return r=n,!1})),r}function O(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}function y(e,t,n){return t==t?function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}(e,t,n):O(e,L,n)}function I(e,t,n,r){for(var i=n-1,a=e.length;++i<a;)if(r(e[i],t))return i;return-1}function L(e){return e!=e}function N(e,t){var n=null==e?0:e.length;return n?C(e,t)/n:Q}function T(e){return function(t){return null==t?j:t[e]}}function D(e){return function(t){return null==e?j:e[t]}}function b(e,t,n,r,i){return i(e,(function(e,i,a){n=r?(r=!1,e):t(n,e,i,a)})),n}function C(e,t){for(var n,r=-1,i=e.length;++r<i;){var a=t(e[r]);a!==j&&(n=n===j?a:n+a)}return n}function R(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function w(e){return function(t){return e(t)}}function F(e,t){return c(t,(function(t){return e[t]}))}function M(e,t){return e.has(t)}function P(e,t){for(var n=-1,r=e.length;++n<r&&y(t,e[n],0)>-1;);return n}function A(e,t){for(var n=e.length;n--&&y(t,e[n],0)>-1;);return n}function E(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}function k(e){return"\\"+jt[e]}function _(e){return Vt.test(e)}function U(e){return Gt.test(e)}function x(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function V(e,t){return function(n){return e(t(n))}}function G(e,t){for(var n=-1,r=e.length,i=0,a=[];++n<r;){var s=e[n];s!==t&&s!==K||(e[n]=K,a[i++]=n)}return a}function W(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function q(e){return _(e)?function(e){for(var t=Ut.lastIndex=0;Ut.test(e);)++t;return t}(e):ln(e)}function z(e){return _(e)?function(e){return e.match(Ut)||[]}(e):function(e){return e.split("")}(e)}function H(e){return e.match(xt)||[]}var j,Y="Expected a function",Z="__lodash_hash_undefined__",K="__lodash_placeholder__",X=128,$=9007199254740991,Q=NaN,J=4294967295,ee=[["ary",X],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],te="[object Arguments]",ne="[object Array]",re="[object Boolean]",ie="[object Date]",ae="[object Error]",se="[object Function]",oe="[object GeneratorFunction]",de="[object Map]",ue="[object Number]",le="[object Object]",fe="[object Promise]",ge="[object RegExp]",ce="[object Set]",me="[object String]",pe="[object Symbol]",Be="[object WeakMap]",he="[object ArrayBuffer]",Se="[object DataView]",ve="[object Float32Array]",Oe="[object Float64Array]",ye="[object Int8Array]",Ie="[object Int16Array]",Le="[object Int32Array]",Ne="[object Uint8Array]",Te="[object Uint8ClampedArray]",De="[object Uint16Array]",be="[object Uint32Array]",Ce=/\b__p \+= '';/g,Re=/\b(__p \+=) '' \+/g,we=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Fe=/&(?:amp|lt|gt|quot|#39);/g,Me=/[&<>"']/g,Pe=RegExp(Fe.source),Ae=RegExp(Me.source),Ee=/<%-([\s\S]+?)%>/g,ke=/<%([\s\S]+?)%>/g,_e=/<%=([\s\S]+?)%>/g,Ue=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xe=/^\w*$/,Ve=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ge=/[\\^$.*+?()[\]{}|]/g,We=RegExp(Ge.source),qe=/^\s+|\s+$/g,ze=/^\s+/,He=/\s+$/,je=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ye=/\{\n\/\* \[wrapped with (.+)\] \*/,Ze=/,? & /,Ke=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Xe=/\\(\\)?/g,$e=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Qe=/\w*$/,Je=/^[-+]0x[0-9a-f]+$/i,et=/^0b[01]+$/i,tt=/^\[object .+?Constructor\]$/,nt=/^0o[0-7]+$/i,rt=/^(?:0|[1-9]\d*)$/,it=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,at=/($^)/,st=/['\n\r\u2028\u2029\\]/g,ot="\\ud800-\\udfff",dt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ut="\\u2700-\\u27bf",lt="a-z\\xdf-\\xf6\\xf8-\\xff",ft="A-Z\\xc0-\\xd6\\xd8-\\xde",gt="\\ufe0e\\ufe0f",ct="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",mt="['’]",pt="["+ot+"]",Bt="["+ct+"]",ht="["+dt+"]",St="\\d+",vt="["+ut+"]",Ot="["+lt+"]",yt="[^"+ot+ct+St+ut+lt+ft+"]",It="\\ud83c[\\udffb-\\udfff]",Lt="[^"+ot+"]",Nt="(?:\\ud83c[\\udde6-\\uddff]){2}",Tt="[\\ud800-\\udbff][\\udc00-\\udfff]",Dt="["+ft+"]",bt="(?:"+Ot+"|"+yt+")",Ct="(?:"+Dt+"|"+yt+")",Rt="(?:['’](?:d|ll|m|re|s|t|ve))?",wt="(?:['’](?:D|LL|M|RE|S|T|VE))?",Ft="(?:"+ht+"|"+It+")"+"?",Mt="["+gt+"]?",Pt=Mt+Ft+("(?:\\u200d(?:"+[Lt,Nt,Tt].join("|")+")"+Mt+Ft+")*"),At="(?:"+[vt,Nt,Tt].join("|")+")"+Pt,Et="(?:"+[Lt+ht+"?",ht,Nt,Tt,pt].join("|")+")",kt=RegExp(mt,"g"),_t=RegExp(ht,"g"),Ut=RegExp(It+"(?="+It+")|"+Et+Pt,"g"),xt=RegExp([Dt+"?"+Ot+"+"+Rt+"(?="+[Bt,Dt,"$"].join("|")+")",Ct+"+"+wt+"(?="+[Bt,Dt+bt,"$"].join("|")+")",Dt+"?"+bt+"+"+Rt,Dt+"+"+wt,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",St,At].join("|"),"g"),Vt=RegExp("[\\u200d"+ot+dt+gt+"]"),Gt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Wt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],qt=-1,zt={};zt[ve]=zt[Oe]=zt[ye]=zt[Ie]=zt[Le]=zt[Ne]=zt[Te]=zt[De]=zt[be]=!0,zt[te]=zt[ne]=zt[he]=zt[re]=zt[Se]=zt[ie]=zt[ae]=zt[se]=zt[de]=zt[ue]=zt[le]=zt[ge]=zt[ce]=zt[me]=zt[Be]=!1;var Ht={};Ht[te]=Ht[ne]=Ht[he]=Ht[Se]=Ht[re]=Ht[ie]=Ht[ve]=Ht[Oe]=Ht[ye]=Ht[Ie]=Ht[Le]=Ht[de]=Ht[ue]=Ht[le]=Ht[ge]=Ht[ce]=Ht[me]=Ht[pe]=Ht[Ne]=Ht[Te]=Ht[De]=Ht[be]=!0,Ht[ae]=Ht[se]=Ht[Be]=!1;var jt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Yt=parseFloat,Zt=parseInt,Kt="object"==typeof e&&e&&e.Object===Object&&e,Xt="object"==typeof self&&self&&self.Object===Object&&self,$t=Kt||Xt||Function("return this")(),Qt=t&&!t.nodeType&&t,Jt=Qt&&"object"==typeof r&&r&&!r.nodeType&&r,en=Jt&&Jt.exports===Qt,tn=en&&Kt.process,nn=function(){try{var e=Jt&&Jt.require&&Jt.require("util").types;return e||tn&&tn.binding&&tn.binding("util")}catch(e){}}(),rn=nn&&nn.isArrayBuffer,an=nn&&nn.isDate,sn=nn&&nn.isMap,on=nn&&nn.isRegExp,dn=nn&&nn.isSet,un=nn&&nn.isTypedArray,ln=T("length"),fn=D({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),gn=D({"&":"&","<":"<",">":">",'"':""","'":"'"}),cn=D({"&":"&","<":"<",">":">",""":'"',"'":"'"}),mn=function e(t){function n(e){if(Ai(e)&&!No(e)&&!(e instanceof D)){if(e instanceof i)return e;if(La.call(e,"__wrapped__"))return si(e)}return new i(e)}function r(){}function i(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=j}function D(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=J,this.__views__=[]}function Ke(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function ot(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function dt(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function ut(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new dt;++t<n;)this.add(e[t])}function lt(e){this.size=(this.__data__=new ot(e)).size}function ft(e,t){var n=No(e),r=!n&&Lo(e),i=!n&&!r&&Do(e),a=!n&&!r&&!i&&Fo(e),s=n||r||i||a,o=s?R(e.length,Ba):[],d=o.length;for(var u in e)!t&&!La.call(e,u)||s&&("length"==u||i&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||qr(u,d))||o.push(u);return o}function gt(e){var t=e.length;return t?e[Dn(0,t-1)]:j}function ct(e,t){return ni(rr(e),It(t,0,e.length))}function mt(e){return ni(rr(e))}function pt(e,t,n){(n===j||Di(e[t],n))&&(n!==j||t in e)||Ot(e,t,n)}function Bt(e,t,n){var r=e[t];La.call(e,t)&&Di(r,n)&&(n!==j||t in e)||Ot(e,t,n)}function ht(e,t){for(var n=e.length;n--;)if(Di(e[n][0],t))return n;return-1}function St(e,t,n,r){return ys(e,(function(e,i,a){t(r,e,n(e),a)})),r}function vt(e,t){return e&&ir(t,Zi(t),e)}function Ot(e,t,n){"__proto__"==t&&Ga?Ga(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function yt(e,t){for(var n=-1,r=t.length,i=ua(r),a=null==e;++n<r;)i[n]=a?j:ji(e,t[n]);return i}function It(e,t,n){return e==e&&(n!==j&&(e=e<=n?e:n),t!==j&&(e=e>=t?e:t)),e}function Lt(e,t,n,r,i,a){var s,d=1&t,u=2&t,l=4&t;if(n&&(s=i?n(e,r,i,a):n(e)),s!==j)return s;if(!Pi(e))return e;var f=No(e);if(f){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&La.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!d)return rr(e,s)}else{var g=Ps(e),c=g==se||g==oe;if(Do(e))return $n(e,d);if(g==le||g==te||c&&!i){if(s=u||c?{}:Gr(e),!d)return u?function(e,t){return ir(e,Ms(e),t)}(e,function(e,t){return e&&ir(t,Ki(t),e)}(s,e)):function(e,t){return ir(e,Fs(e),t)}(e,vt(s,e))}else{if(!Ht[g])return i?e:{};s=function(e,t,n){var r=e.constructor;switch(t){case he:return Qn(e);case re:case ie:return new r(+e);case Se:return function(e,t){return new e.constructor(t?Qn(e.buffer):e.buffer,e.byteOffset,e.byteLength)}(e,n);case ve:case Oe:case ye:case Ie:case Le:case Ne:case Te:case De:case be:return Jn(e,n);case de:return new r;case ue:case me:return new r(e);case ge:return function(e){var t=new e.constructor(e.source,Qe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case ce:return new r;case pe:return function(e){return Ss?ma(Ss.call(e)):{}}(e)}}(e,g,d)}}a||(a=new lt);var m=a.get(e);if(m)return m;a.set(e,s),wo(e)?e.forEach((function(r){s.add(Lt(r,t,n,r,e,a))})):Co(e)&&e.forEach((function(r,i){s.set(i,Lt(r,t,n,i,e,a))}));var p=f?j:(l?u?Pr:Mr:u?Ki:Zi)(e);return o(p||e,(function(r,i){p&&(r=e[i=r]),Bt(s,i,Lt(r,t,n,i,e,a))})),s}function Nt(e,t,n){var r=n.length;if(null==e)return!r;for(e=ma(e);r--;){var i=n[r],a=t[i],s=e[i];if(s===j&&!(i in e)||!a(s))return!1}return!0}function Tt(e,t,n){if("function"!=typeof e)throw new ha(Y);return ks((function(){e.apply(j,n)}),t)}function Dt(e,t,n,r){var i=-1,a=f,s=!0,o=e.length,d=[],u=t.length;if(!o)return d;n&&(t=c(t,w(n))),r?(a=g,s=!1):t.length>=200&&(a=M,s=!1,t=new ut(t));e:for(;++i<o;){var l=e[i],m=null==n?l:n(l);if(l=r||0!==l?l:0,s&&m==m){for(var p=u;p--;)if(t[p]===m)continue e;d.push(l)}else a(t,m,r)||d.push(l)}return d}function bt(e,t){var n=!0;return ys(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function Ct(e,t,n){for(var r=-1,i=e.length;++r<i;){var a=e[r],s=t(a);if(null!=s&&(o===j?s==s&&!Ui(s):n(s,o)))var o=s,d=a}return d}function Rt(e,t){var n=[];return ys(e,(function(e,r,i){t(e,r,i)&&n.push(e)})),n}function wt(e,t,n,r,i){var a=-1,s=e.length;for(n||(n=Wr),i||(i=[]);++a<s;){var o=e[a];t>0&&n(o)?t>1?wt(o,t-1,n,r,i):m(i,o):r||(i[i.length]=o)}return i}function Ft(e,t){return e&&Ls(e,t,Zi)}function Mt(e,t){return e&&Ns(e,t,Zi)}function Pt(e,t){return l(t,(function(t){return wi(e[t])}))}function At(e,t){for(var n=0,r=(t=Kn(t,e)).length;null!=e&&n<r;)e=e[ri(t[n++])];return n&&n==r?e:j}function Et(e,t,n){var r=t(e);return No(e)?r:m(r,n(e))}function Ut(e){return null==e?e===j?"[object Undefined]":"[object Null]":Va&&Va in ma(e)?function(e){var t=La.call(e,Va),n=e[Va];try{e[Va]=j;var r=!0}catch(e){}var i=Da.call(e);return r&&(t?e[Va]=n:delete e[Va]),i}(e):function(e){return Da.call(e)}(e)}function xt(e,t){return e>t}function Vt(e,t){return null!=e&&La.call(e,t)}function Gt(e,t){return null!=e&&t in ma(e)}function jt(e,t,n){for(var r=n?g:f,i=e[0].length,a=e.length,s=a,o=ua(a),d=1/0,u=[];s--;){var l=e[s];s&&t&&(l=c(l,w(t))),d=Ja(l.length,d),o[s]=!n&&(t||i>=120&&l.length>=120)?new ut(s&&l):j}l=e[0];var m=-1,p=o[0];e:for(;++m<i&&u.length<d;){var B=l[m],h=t?t(B):B;if(B=n||0!==B?B:0,!(p?M(p,h):r(u,h,n))){for(s=a;--s;){var S=o[s];if(!(S?M(S,h):r(e[s],h,n)))continue e}p&&p.push(h),u.push(B)}}return u}function Kt(e,t,n){var r=null==(e=$r(e,t=Kn(t,e)))?e:e[ri(fi(t))];return null==r?j:a(r,e,n)}function Xt(e){return Ai(e)&&Ut(e)==te}function Qt(e,t,n,r,i){return e===t||(null==e||null==t||!Ai(e)&&!Ai(t)?e!=e&&t!=t:function(e,t,n,r,i,a){var s=No(e),o=No(t),d=s?ne:Ps(e),u=o?ne:Ps(t),l=(d=d==te?le:d)==le,f=(u=u==te?le:u)==le,g=d==u;if(g&&Do(e)){if(!Do(t))return!1;s=!0,l=!1}if(g&&!l)return a||(a=new lt),s||Fo(e)?wr(e,t,n,r,i,a):function(e,t,n,r,i,a,s){switch(n){case Se:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case he:return!(e.byteLength!=t.byteLength||!a(new Ma(e),new Ma(t)));case re:case ie:case ue:return Di(+e,+t);case ae:return e.name==t.name&&e.message==t.message;case ge:case me:return e==t+"";case de:var o=x;case ce:var d=1&r;if(o||(o=W),e.size!=t.size&&!d)return!1;var u=s.get(e);if(u)return u==t;r|=2,s.set(e,t);var l=wr(o(e),o(t),r,i,a,s);return s.delete(e),l;case pe:if(Ss)return Ss.call(e)==Ss.call(t)}return!1}(e,t,d,n,r,i,a);if(!(1&n)){var c=l&&La.call(e,"__wrapped__"),m=f&&La.call(t,"__wrapped__");if(c||m){var p=c?e.value():e,B=m?t.value():t;return a||(a=new lt),i(p,B,n,r,a)}}return!!g&&(a||(a=new lt),function(e,t,n,r,i,a){var s=1&n,o=Mr(e),d=o.length;if(d!=Mr(t).length&&!s)return!1;for(var u=d;u--;){var l=o[u];if(!(s?l in t:La.call(t,l)))return!1}var f=a.get(e),g=a.get(t);if(f&&g)return f==t&&g==e;var c=!0;a.set(e,t),a.set(t,e);for(var m=s;++u<d;){l=o[u];var p=e[l],B=t[l];if(r)var h=s?r(B,p,l,t,e,a):r(p,B,l,e,t,a);if(!(h===j?p===B||i(p,B,n,r,a):h)){c=!1;break}m||(m="constructor"==l)}if(c&&!m){var S=e.constructor,v=t.constructor;S!=v&&"constructor"in e&&"constructor"in t&&!("function"==typeof S&&S instanceof S&&"function"==typeof v&&v instanceof v)&&(c=!1)}return a.delete(e),a.delete(t),c}(e,t,n,r,i,a))}(e,t,n,r,Qt,i))}function Jt(e,t,n,r){var i=n.length,a=i,s=!r;if(null==e)return!a;for(e=ma(e);i--;){var o=n[i];if(s&&o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<a;){var d=(o=n[i])[0],u=e[d],l=o[1];if(s&&o[2]){if(u===j&&!(d in e))return!1}else{var f=new lt;if(r)var g=r(u,l,d,e,t,f);if(!(g===j?Qt(l,u,3,r,f):g))return!1}}return!0}function tn(e){return!(!Pi(e)||function(e){return!!Ta&&Ta in e}(e))&&(wi(e)?Ra:tt).test(ii(e))}function nn(e){return"function"==typeof e?e:null==e?na:"object"==typeof e?No(e)?vn(e[0],e[1]):Sn(e):sa(e)}function ln(e){if(!Yr(e))return $a(e);var t=[];for(var n in ma(e))La.call(e,n)&&"constructor"!=n&&t.push(n);return t}function pn(e){if(!Pi(e))return function(e){var t=[];if(null!=e)for(var n in ma(e))t.push(n);return t}(e);var t=Yr(e),n=[];for(var r in e)("constructor"!=r||!t&&La.call(e,r))&&n.push(r);return n}function Bn(e,t){return e<t}function hn(e,t){var n=-1,r=bi(e)?ua(e.length):[];return ys(e,(function(e,i,a){r[++n]=t(e,i,a)})),r}function Sn(e){var t=Ur(e);return 1==t.length&&t[0][2]?Kr(t[0][0],t[0][1]):function(n){return n===e||Jt(n,e,t)}}function vn(e,t){return Hr(e)&&Zr(t)?Kr(ri(e),t):function(n){var r=ji(n,e);return r===j&&r===t?Yi(n,e):Qt(t,r,3)}}function On(e,t,n,r,i){e!==t&&Ls(t,(function(a,s){if(i||(i=new lt),Pi(a))!function(e,t,n,r,i,a,s){var o=Jr(e,n),d=Jr(t,n),u=s.get(d);if(u)return pt(e,n,u),j;var l=a?a(o,d,n+"",e,t,s):j,f=l===j;if(f){var g=No(d),c=!g&&Do(d),m=!g&&!c&&Fo(d);l=d,g||c||m?No(o)?l=o:Ci(o)?l=rr(o):c?(f=!1,l=$n(d,!0)):m?(f=!1,l=Jn(d,!0)):l=[]:ki(d)||Lo(d)?(l=o,Lo(o)?l=zi(o):Pi(o)&&!wi(o)||(l=Gr(d))):f=!1}f&&(s.set(d,l),i(l,d,r,a,s),s.delete(d)),pt(e,n,l)}(e,t,s,n,On,r,i);else{var o=r?r(Jr(e,s),a,s+"",e,t,i):j;o===j&&(o=a),pt(e,s,o)}}),Ki)}function yn(e,t){var n=e.length;if(n)return qr(t+=t<0?n:0,n)?e[t]:j}function In(e,t,n){t=t.length?c(t,(function(e){return No(e)?function(t){return At(t,1===e.length?e[0]:e)}:e})):[na];var r=-1;return t=c(t,w(kr())),function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}(hn(e,(function(e,n,i){return{criteria:c(t,(function(t){return t(e)})),index:++r,value:e}})),(function(e,t){return function(e,t,n){for(var r=-1,i=e.criteria,a=t.criteria,s=i.length,o=n.length;++r<s;){var d=er(i[r],a[r]);if(d)return r>=o?d:d*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}))}function Ln(e,t,n){for(var r=-1,i=t.length,a={};++r<i;){var s=t[r],o=At(e,s);n(o,s)&&Fn(a,Kn(s,e),o)}return a}function Nn(e,t,n,r){var i=r?I:y,a=-1,s=t.length,o=e;for(e===t&&(t=rr(t)),n&&(o=c(e,w(n)));++a<s;)for(var d=0,u=t[a],l=n?n(u):u;(d=i(o,l,d,r))>-1;)o!==e&&_a.call(o,d,1),_a.call(e,d,1);return e}function Tn(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==a){var a=i;qr(i)?_a.call(e,i,1):Gn(e,i)}}return e}function Dn(e,t){return e+ja(ns()*(t-e+1))}function bn(e,t){var n="";if(!e||t<1||t>$)return n;do{t%2&&(n+=e),(t=ja(t/2))&&(e+=e)}while(t);return n}function Cn(e,t){return _s(Xr(e,t,na),e+"")}function Rn(e){return gt($i(e))}function wn(e,t){var n=$i(e);return ni(n,It(t,0,n.length))}function Fn(e,t,n,r){if(!Pi(e))return e;for(var i=-1,a=(t=Kn(t,e)).length,s=a-1,o=e;null!=o&&++i<a;){var d=ri(t[i]),u=n;if("__proto__"===d||"constructor"===d||"prototype"===d)return e;if(i!=s){var l=o[d];(u=r?r(l,d,o):j)===j&&(u=Pi(l)?l:qr(t[i+1])?[]:{})}Bt(o,d,u),o=o[d]}return e}function Mn(e){return ni($i(e))}function Pn(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var a=ua(i);++r<i;)a[r]=e[r+t];return a}function An(e,t){var n;return ys(e,(function(e,r,i){return!(n=t(e,r,i))})),!!n}function En(e,t,n){var r=0,i=null==e?r:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;r<i;){var a=r+i>>>1,s=e[a];null!==s&&!Ui(s)&&(n?s<=t:s<t)?r=a+1:i=a}return i}return kn(e,t,na,n)}function kn(e,t,n,r){var i=0,a=null==e?0:e.length;if(0===a)return 0;for(var s=(t=n(t))!=t,o=null===t,d=Ui(t),u=t===j;i<a;){var l=ja((i+a)/2),f=n(e[l]),g=f!==j,c=null===f,m=f==f,p=Ui(f);if(s)var B=r||m;else B=u?m&&(r||g):o?m&&g&&(r||!c):d?m&&g&&!c&&(r||!p):!c&&!p&&(r?f<=t:f<t);B?i=l+1:a=l}return Ja(a,4294967294)}function _n(e,t){for(var n=-1,r=e.length,i=0,a=[];++n<r;){var s=e[n],o=t?t(s):s;if(!n||!Di(o,d)){var d=o;a[i++]=0===s?0:s}}return a}function Un(e){return"number"==typeof e?e:Ui(e)?Q:+e}function xn(e){if("string"==typeof e)return e;if(No(e))return c(e,xn)+"";if(Ui(e))return vs?vs.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Vn(e,t,n){var r=-1,i=f,a=e.length,s=!0,o=[],d=o;if(n)s=!1,i=g;else if(a>=200){var u=t?null:Rs(e);if(u)return W(u);s=!1,i=M,d=new ut}else d=t?[]:o;e:for(;++r<a;){var l=e[r],c=t?t(l):l;if(l=n||0!==l?l:0,s&&c==c){for(var m=d.length;m--;)if(d[m]===c)continue e;t&&d.push(c),o.push(l)}else i(d,c,n)||(d!==o&&d.push(c),o.push(l))}return o}function Gn(e,t){return null==(e=$r(e,t=Kn(t,e)))||delete e[ri(fi(t))]}function Wn(e,t,n,r){return Fn(e,t,n(At(e,t)),r)}function qn(e,t,n,r){for(var i=e.length,a=r?i:-1;(r?a--:++a<i)&&t(e[a],a,e););return n?Pn(e,r?0:a,r?a+1:i):Pn(e,r?a+1:0,r?i:a)}function zn(e,t){var n=e;return n instanceof D&&(n=n.value()),p(t,(function(e,t){return t.func.apply(t.thisArg,m([e],t.args))}),n)}function Hn(e,t,n){var r=e.length;if(r<2)return r?Vn(e[0]):[];for(var i=-1,a=ua(r);++i<r;)for(var s=e[i],o=-1;++o<r;)o!=i&&(a[i]=Dt(a[i]||s,e[o],t,n));return Vn(wt(a,1),t,n)}function jn(e,t,n){for(var r=-1,i=e.length,a=t.length,s={};++r<i;)n(s,e[r],r<a?t[r]:j);return s}function Yn(e){return Ci(e)?e:[]}function Zn(e){return"function"==typeof e?e:na}function Kn(e,t){return No(e)?e:Hr(e,t)?[e]:Us(Hi(e))}function Xn(e,t,n){var r=e.length;return n=n===j?r:n,!t&&n>=r?e:Pn(e,t,n)}function $n(e,t){if(t)return e.slice();var n=e.length,r=Pa?Pa(n):new e.constructor(n);return e.copy(r),r}function Qn(e){var t=new e.constructor(e.byteLength);return new Ma(t).set(new Ma(e)),t}function Jn(e,t){return new e.constructor(t?Qn(e.buffer):e.buffer,e.byteOffset,e.length)}function er(e,t){if(e!==t){var n=e!==j,r=null===e,i=e==e,a=Ui(e),s=t!==j,o=null===t,d=t==t,u=Ui(t);if(!o&&!u&&!a&&e>t||a&&s&&d&&!o&&!u||r&&s&&d||!n&&d||!i)return 1;if(!r&&!a&&!u&&e<t||u&&n&&i&&!r&&!a||o&&n&&i||!s&&i||!d)return-1}return 0}function tr(e,t,n,r){for(var i=-1,a=e.length,s=n.length,o=-1,d=t.length,u=Qa(a-s,0),l=ua(d+u),f=!r;++o<d;)l[o]=t[o];for(;++i<s;)(f||i<a)&&(l[n[i]]=e[i]);for(;u--;)l[o++]=e[i++];return l}function nr(e,t,n,r){for(var i=-1,a=e.length,s=-1,o=n.length,d=-1,u=t.length,l=Qa(a-o,0),f=ua(l+u),g=!r;++i<l;)f[i]=e[i];for(var c=i;++d<u;)f[c+d]=t[d];for(;++s<o;)(g||i<a)&&(f[c+n[s]]=e[i++]);return f}function rr(e,t){var n=-1,r=e.length;for(t||(t=ua(r));++n<r;)t[n]=e[n];return t}function ir(e,t,n,r){var i=!n;n||(n={});for(var a=-1,s=t.length;++a<s;){var o=t[a],d=r?r(n[o],e[o],o,n,e):j;d===j&&(d=e[o]),i?Ot(n,o,d):Bt(n,o,d)}return n}function ar(e,t){return function(n,r){var i=No(n)?s:St,a=t?t():{};return i(n,e,kr(r,2),a)}}function sr(e){return Cn((function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:j,s=i>2?n[2]:j;for(a=e.length>3&&"function"==typeof a?(i--,a):j,s&&zr(n[0],n[1],s)&&(a=i<3?j:a,i=1),t=ma(t);++r<i;){var o=n[r];o&&e(t,o,r,a)}return t}))}function or(e,t){return function(n,r){if(null==n)return n;if(!bi(n))return e(n,r);for(var i=n.length,a=t?i:-1,s=ma(n);(t?a--:++a<i)&&!1!==r(s[a],a,s););return n}}function dr(e){return function(t,n,r){for(var i=-1,a=ma(t),s=r(t),o=s.length;o--;){var d=s[e?o:++i];if(!1===n(a[d],d,a))break}return t}}function ur(e){return function(t){var n=_(t=Hi(t))?z(t):j,r=n?n[0]:t.charAt(0),i=n?Xn(n,1).join(""):t.slice(1);return r[e]()+i}}function lr(e){return function(t){return p(ea(Ji(t).replace(kt,"")),e,"")}}function fr(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Os(e.prototype),r=e.apply(n,t);return Pi(r)?r:n}}function gr(e,t,n){var r=fr(e);return function i(){for(var s=arguments.length,o=ua(s),d=s,u=Er(i);d--;)o[d]=arguments[d];var l=s<3&&o[0]!==u&&o[s-1]!==u?[]:G(o,u);return(s-=l.length)<n?Lr(e,t,pr,i.placeholder,j,o,l,j,j,n-s):a(this&&this!==$t&&this instanceof i?r:e,this,o)}}function cr(e){return function(t,n,r){var i=ma(t);if(!bi(t)){var a=kr(n,3);t=Zi(t),n=function(e){return a(i[e],e,i)}}var s=e(t,n,r);return s>-1?i[a?t[s]:s]:j}}function mr(e){return Fr((function(t){var n=t.length,r=n,a=i.prototype.thru;for(e&&t.reverse();r--;){var s=t[r];if("function"!=typeof s)throw new ha(Y);if(a&&!o&&"wrapper"==Ar(s))var o=new i([],!0)}for(r=o?r:n;++r<n;){var d=Ar(s=t[r]),u="wrapper"==d?ws(s):j;o=u&&jr(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?o[Ar(u[0])].apply(o,u[3]):1==s.length&&jr(s)?o[d]():o.thru(s)}return function(){var e=arguments,r=e[0];if(o&&1==e.length&&No(r))return o.plant(r).value();for(var i=0,a=n?t[i].apply(this,e):r;++i<n;)a=t[i].call(this,a);return a}}))}function pr(e,t,n,r,i,a,s,o,d,u){var l=t&X,f=1&t,g=2&t,c=24&t,m=512&t,p=g?j:fr(e);return function B(){for(var h=arguments.length,S=ua(h),v=h;v--;)S[v]=arguments[v];if(c)var O=Er(B),y=E(S,O);if(r&&(S=tr(S,r,i,c)),a&&(S=nr(S,a,s,c)),h-=y,c&&h<u)return Lr(e,t,pr,B.placeholder,n,S,G(S,O),o,d,u-h);var I=f?n:this,L=g?I[e]:e;return h=S.length,o?S=Qr(S,o):m&&h>1&&S.reverse(),l&&d<h&&(S.length=d),this&&this!==$t&&this instanceof B&&(L=p||fr(L)),L.apply(I,S)}}function Br(e,t){return function(n,r){return function(e,t,n,r){return Ft(e,(function(e,i,a){t(r,n(e),i,a)})),r}(n,e,t(r),{})}}function hr(e,t){return function(n,r){var i;if(n===j&&r===j)return t;if(n!==j&&(i=n),r!==j){if(i===j)return r;"string"==typeof n||"string"==typeof r?(n=xn(n),r=xn(r)):(n=Un(n),r=Un(r)),i=e(n,r)}return i}}function Sr(e){return Fr((function(t){return t=c(t,w(kr())),Cn((function(n){var r=this;return e(t,(function(e){return a(e,r,n)}))}))}))}function vr(e,t){var n=(t=t===j?" ":xn(t)).length;if(n<2)return n?bn(t,e):t;var r=bn(t,Ha(e/q(t)));return _(t)?Xn(z(r),0,e).join(""):r.slice(0,e)}function Or(e,t,n,r){var i=1&t,s=fr(e);return function t(){for(var o=-1,d=arguments.length,u=-1,l=r.length,f=ua(l+d),g=this&&this!==$t&&this instanceof t?s:e;++u<l;)f[u]=r[u];for(;d--;)f[u++]=arguments[++o];return a(g,i?n:this,f)}}function yr(e){return function(t,n,r){return r&&"number"!=typeof r&&zr(t,n,r)&&(n=r=j),t=Vi(t),n===j?(n=t,t=0):n=Vi(n),function(e,t,n,r){for(var i=-1,a=Qa(Ha((t-e)/(n||1)),0),s=ua(a);a--;)s[r?a:++i]=e,e+=n;return s}(t,n,r=r===j?t<n?1:-1:Vi(r),e)}}function Ir(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=qi(t),n=qi(n)),e(t,n)}}function Lr(e,t,n,r,i,a,s,o,d,u){var l=8&t;t|=l?32:64,4&(t&=~(l?64:32))||(t&=-4);var f=[e,t,i,l?a:j,l?s:j,l?j:a,l?j:s,o,d,u],g=n.apply(j,f);return jr(e)&&Es(g,f),g.placeholder=r,ei(g,e,t)}function Nr(e){var t=ca[e];return function(e,n){if(e=qi(e),(n=null==n?0:Ja(Gi(n),292))&&Ka(e)){var r=(Hi(e)+"e").split("e");return+((r=(Hi(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}function Tr(e){return function(t){var n=Ps(t);return n==de?x(t):n==ce?function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}(t):function(e,t){return c(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Dr(e,t,n,r,i,a,s,o){var d=2&t;if(!d&&"function"!=typeof e)throw new ha(Y);var u=r?r.length:0;if(u||(t&=-97,r=i=j),s=s===j?s:Qa(Gi(s),0),o=o===j?o:Gi(o),u-=i?i.length:0,64&t){var l=r,f=i;r=i=j}var g=d?j:ws(e),c=[e,t,n,r,i,l,f,a,s,o];if(g&&function(e,t){var n=e[1],r=t[1],i=n|r,a=i<131,s=r==X&&8==n||r==X&&256==n&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!a&&!s)return e;1&r&&(e[2]=t[2],i|=1&n?0:4);var o=t[3];if(o){var d=e[3];e[3]=d?tr(d,o,t[4]):o,e[4]=d?G(e[3],K):t[4]}(o=t[5])&&(d=e[5],e[5]=d?nr(d,o,t[6]):o,e[6]=d?G(e[5],K):t[6]),(o=t[7])&&(e[7]=o),r&X&&(e[8]=null==e[8]?t[8]:Ja(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(c,g),e=c[0],t=c[1],n=c[2],r=c[3],i=c[4],!(o=c[9]=c[9]===j?d?0:e.length:Qa(c[9]-u,0))&&24&t&&(t&=-25),t&&1!=t)m=8==t||16==t?gr(e,t,o):32!=t&&33!=t||i.length?pr.apply(j,c):Or(e,t,n,r);else var m=function(e,t,n){var r=1&t,i=fr(e);return function t(){return(this&&this!==$t&&this instanceof t?i:e).apply(r?n:this,arguments)}}(e,t,n);return ei((g?Ts:Es)(m,c),e,t)}function br(e,t,n,r){return e===j||Di(e,Oa[n])&&!La.call(r,n)?t:e}function Cr(e,t,n,r,i,a){return Pi(e)&&Pi(t)&&(a.set(t,e),On(e,t,j,Cr,a),a.delete(t)),e}function Rr(e){return ki(e)?j:e}function wr(e,t,n,r,i,a){var s=1&n,o=e.length,d=t.length;if(o!=d&&!(s&&d>o))return!1;var u=a.get(e),l=a.get(t);if(u&&l)return u==t&&l==e;var f=-1,g=!0,c=2&n?new ut:j;for(a.set(e,t),a.set(t,e);++f<o;){var m=e[f],p=t[f];if(r)var B=s?r(p,m,f,t,e,a):r(m,p,f,e,t,a);if(B!==j){if(B)continue;g=!1;break}if(c){if(!h(t,(function(e,t){if(!M(c,t)&&(m===e||i(m,e,n,r,a)))return c.push(t)}))){g=!1;break}}else if(m!==p&&!i(m,p,n,r,a)){g=!1;break}}return a.delete(e),a.delete(t),g}function Fr(e){return _s(Xr(e,j,ui),e+"")}function Mr(e){return Et(e,Zi,Fs)}function Pr(e){return Et(e,Ki,Ms)}function Ar(e){for(var t=e.name+"",n=fs[t],r=La.call(fs,t)?n.length:0;r--;){var i=n[r],a=i.func;if(null==a||a==e)return i.name}return t}function Er(e){return(La.call(n,"placeholder")?n:e).placeholder}function kr(){var e=n.iteratee||ra;return e=e===ra?nn:e,arguments.length?e(arguments[0],arguments[1]):e}function _r(e,t){var n=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?n["string"==typeof t?"string":"hash"]:n.map}function Ur(e){for(var t=Zi(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,Zr(i)]}return t}function xr(e,t){var n=function(e,t){return null==e?j:e[t]}(e,t);return tn(n)?n:j}function Vr(e,t,n){for(var r=-1,i=(t=Kn(t,e)).length,a=!1;++r<i;){var s=ri(t[r]);if(!(a=null!=e&&n(e,s)))break;e=e[s]}return a||++r!=i?a:!!(i=null==e?0:e.length)&&Mi(i)&&qr(s,i)&&(No(e)||Lo(e))}function Gr(e){return"function"!=typeof e.constructor||Yr(e)?{}:Os(Aa(e))}function Wr(e){return No(e)||Lo(e)||!!(Ua&&e&&e[Ua])}function qr(e,t){var n=typeof e;return!!(t=null==t?$:t)&&("number"==n||"symbol"!=n&&rt.test(e))&&e>-1&&e%1==0&&e<t}function zr(e,t,n){if(!Pi(n))return!1;var r=typeof t;return!!("number"==r?bi(n)&&qr(t,n.length):"string"==r&&t in n)&&Di(n[t],e)}function Hr(e,t){if(No(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!Ui(e))||xe.test(e)||!Ue.test(e)||null!=t&&e in ma(t)}function jr(e){var t=Ar(e),r=n[t];if("function"!=typeof r||!(t in D.prototype))return!1;if(e===r)return!0;var i=ws(r);return!!i&&e===i[0]}function Yr(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Oa)}function Zr(e){return e==e&&!Pi(e)}function Kr(e,t){return function(n){return null!=n&&n[e]===t&&(t!==j||e in ma(n))}}function Xr(e,t,n){return t=Qa(t===j?e.length-1:t,0),function(){for(var r=arguments,i=-1,s=Qa(r.length-t,0),o=ua(s);++i<s;)o[i]=r[t+i];i=-1;for(var d=ua(t+1);++i<t;)d[i]=r[i];return d[t]=n(o),a(e,this,d)}}function $r(e,t){return t.length<2?e:At(e,Pn(t,0,-1))}function Qr(e,t){for(var n=e.length,r=Ja(t.length,n),i=rr(e);r--;){var a=t[r];e[r]=qr(a,n)?i[a]:j}return e}function Jr(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}function ei(e,t,n){var r=t+"";return _s(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(je,"{\n/* [wrapped with "+t+"] */\n")}(r,ai(function(e){var t=e.match(Ye);return t?t[1].split(Ze):[]}(r),n)))}function ti(e){var t=0,n=0;return function(){var r=es(),i=16-(r-n);if(n=r,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(j,arguments)}}function ni(e,t){var n=-1,r=e.length,i=r-1;for(t=t===j?r:t;++n<t;){var a=Dn(n,i),s=e[a];e[a]=e[n],e[n]=s}return e.length=t,e}function ri(e){if("string"==typeof e||Ui(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ii(e){if(null!=e){try{return Ia.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function ai(e,t){return o(ee,(function(n){var r="_."+n[0];t&n[1]&&!f(e,r)&&e.push(r)})),e.sort()}function si(e){if(e instanceof D)return e.clone();var t=new i(e.__wrapped__,e.__chain__);return t.__actions__=rr(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}function oi(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:Gi(n);return i<0&&(i=Qa(r+i,0)),O(e,kr(t,3),i)}function di(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r-1;return n!==j&&(i=Gi(n),i=n<0?Qa(r+i,0):Ja(i,r-1)),O(e,kr(t,3),i,!0)}function ui(e){return null!=e&&e.length?wt(e,1):[]}function li(e){return e&&e.length?e[0]:j}function fi(e){var t=null==e?0:e.length;return t?e[t-1]:j}function gi(e,t){return e&&e.length&&t&&t.length?Nn(e,t):e}function ci(e){return null==e?e:rs.call(e)}function mi(e){if(!e||!e.length)return[];var t=0;return e=l(e,(function(e){if(Ci(e))return t=Qa(e.length,t),!0})),R(t,(function(t){return c(e,T(t))}))}function pi(e,t){if(!e||!e.length)return[];var n=mi(e);return null==t?n:c(n,(function(e){return a(t,j,e)}))}function Bi(e){var t=n(e);return t.__chain__=!0,t}function hi(e,t){return t(e)}function Si(e,t){return(No(e)?o:ys)(e,kr(t,3))}function vi(e,t){return(No(e)?d:Is)(e,kr(t,3))}function Oi(e,t){return(No(e)?c:hn)(e,kr(t,3))}function yi(e,t,n){return t=n?j:t,t=e&&null==t?e.length:t,Dr(e,X,j,j,j,j,t)}function Ii(e,t){var n;if("function"!=typeof t)throw new ha(Y);return e=Gi(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=j),n}}function Li(e,t,n){function r(t){var n=u,r=l;return u=l=j,p=t,g=e.apply(r,n)}function i(e){return p=e,c=ks(s,t),B?r(e):g}function a(e){var n=e-m;return m===j||n>=t||n<0||h&&e-p>=f}function s(){var e=go();return a(e)?o(e):(c=ks(s,function(e){var n=t-(e-m);return h?Ja(n,f-(e-p)):n}(e)),j)}function o(e){return c=j,S&&u?r(e):(u=l=j,g)}function d(){var e=go(),n=a(e);if(u=arguments,l=this,m=e,n){if(c===j)return i(m);if(h)return Cs(c),c=ks(s,t),r(m)}return c===j&&(c=ks(s,t)),g}var u,l,f,g,c,m,p=0,B=!1,h=!1,S=!0;if("function"!=typeof e)throw new ha(Y);return t=qi(t)||0,Pi(n)&&(B=!!n.leading,f=(h="maxWait"in n)?Qa(qi(n.maxWait)||0,t):f,S="trailing"in n?!!n.trailing:S),d.cancel=function(){c!==j&&Cs(c),p=0,u=m=l=c=j},d.flush=function(){return c===j?g:o(go())},d}function Ni(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new ha(Y);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var s=e.apply(this,r);return n.cache=a.set(i,s)||a,s};return n.cache=new(Ni.Cache||dt),n}function Ti(e){if("function"!=typeof e)throw new ha(Y);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}function Di(e,t){return e===t||e!=e&&t!=t}function bi(e){return null!=e&&Mi(e.length)&&!wi(e)}function Ci(e){return Ai(e)&&bi(e)}function Ri(e){if(!Ai(e))return!1;var t=Ut(e);return t==ae||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ki(e)}function wi(e){if(!Pi(e))return!1;var t=Ut(e);return t==se||t==oe||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Fi(e){return"number"==typeof e&&e==Gi(e)}function Mi(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=$}function Pi(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ai(e){return null!=e&&"object"==typeof e}function Ei(e){return"number"==typeof e||Ai(e)&&Ut(e)==ue}function ki(e){if(!Ai(e)||Ut(e)!=le)return!1;var t=Aa(e);if(null===t)return!0;var n=La.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Ia.call(n)==ba}function _i(e){return"string"==typeof e||!No(e)&&Ai(e)&&Ut(e)==me}function Ui(e){return"symbol"==typeof e||Ai(e)&&Ut(e)==pe}function xi(e){if(!e)return[];if(bi(e))return _i(e)?z(e):rr(e);if(xa&&e[xa])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[xa]());var t=Ps(e);return(t==de?x:t==ce?W:$i)(e)}function Vi(e){return e?(e=qi(e))===1/0||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function Gi(e){var t=Vi(e),n=t%1;return t==t?n?t-n:t:0}function Wi(e){return e?It(Gi(e),0,J):0}function qi(e){if("number"==typeof e)return e;if(Ui(e))return Q;if(Pi(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Pi(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(qe,"");var n=et.test(e);return n||nt.test(e)?Zt(e.slice(2),n?2:8):Je.test(e)?Q:+e}function zi(e){return ir(e,Ki(e))}function Hi(e){return null==e?"":xn(e)}function ji(e,t,n){var r=null==e?j:At(e,t);return r===j?n:r}function Yi(e,t){return null!=e&&Vr(e,t,Gt)}function Zi(e){return bi(e)?ft(e):ln(e)}function Ki(e){return bi(e)?ft(e,!0):pn(e)}function Xi(e,t){if(null==e)return{};var n=c(Pr(e),(function(e){return[e]}));return t=kr(t),Ln(e,n,(function(e,n){return t(e,n[0])}))}function $i(e){return null==e?[]:F(e,Zi(e))}function Qi(e){return rd(Hi(e).toLowerCase())}function Ji(e){return(e=Hi(e))&&e.replace(it,fn).replace(_t,"")}function ea(e,t,n){return e=Hi(e),(t=n?j:t)===j?U(e)?H(e):S(e):e.match(t)||[]}function ta(e){return function(){return e}}function na(e){return e}function ra(e){return nn("function"==typeof e?e:Lt(e,1))}function ia(e,t,n){var r=Zi(t),i=Pt(t,r);null!=n||Pi(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=Pt(t,Zi(t)));var a=!(Pi(n)&&"chain"in n&&!n.chain),s=wi(e);return o(i,(function(n){var r=t[n];e[n]=r,s&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=rr(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,m([this.value()],arguments))})})),e}function aa(){}function sa(e){return Hr(e)?T(ri(e)):function(e){return function(t){return At(t,e)}}(e)}function oa(){return[]}function da(){return!1}var ua=(t=null==t?$t:mn.defaults($t.Object(),t,mn.pick($t,Wt))).Array,la=t.Date,fa=t.Error,ga=t.Function,ca=t.Math,ma=t.Object,pa=t.RegExp,Ba=t.String,ha=t.TypeError,Sa=ua.prototype,va=ga.prototype,Oa=ma.prototype,ya=t["__core-js_shared__"],Ia=va.toString,La=Oa.hasOwnProperty,Na=0,Ta=function(){var e=/[^.]+$/.exec(ya&&ya.keys&&ya.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),Da=Oa.toString,ba=Ia.call(ma),Ca=$t._,Ra=pa("^"+Ia.call(La).replace(Ge,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),wa=en?t.Buffer:j,Fa=t.Symbol,Ma=t.Uint8Array,Pa=wa?wa.allocUnsafe:j,Aa=V(ma.getPrototypeOf,ma),Ea=ma.create,ka=Oa.propertyIsEnumerable,_a=Sa.splice,Ua=Fa?Fa.isConcatSpreadable:j,xa=Fa?Fa.iterator:j,Va=Fa?Fa.toStringTag:j,Ga=function(){try{var e=xr(ma,"defineProperty");return e({},"",{}),e}catch(e){}}(),Wa=t.clearTimeout!==$t.clearTimeout&&t.clearTimeout,qa=la&&la.now!==$t.Date.now&&la.now,za=t.setTimeout!==$t.setTimeout&&t.setTimeout,Ha=ca.ceil,ja=ca.floor,Ya=ma.getOwnPropertySymbols,Za=wa?wa.isBuffer:j,Ka=t.isFinite,Xa=Sa.join,$a=V(ma.keys,ma),Qa=ca.max,Ja=ca.min,es=la.now,ts=t.parseInt,ns=ca.random,rs=Sa.reverse,is=xr(t,"DataView"),as=xr(t,"Map"),ss=xr(t,"Promise"),os=xr(t,"Set"),ds=xr(t,"WeakMap"),us=xr(ma,"create"),ls=ds&&new ds,fs={},gs=ii(is),cs=ii(as),ms=ii(ss),ps=ii(os),Bs=ii(ds),hs=Fa?Fa.prototype:j,Ss=hs?hs.valueOf:j,vs=hs?hs.toString:j,Os=function(){function e(){}return function(t){if(!Pi(t))return{};if(Ea)return Ea(t);e.prototype=t;var n=new e;return e.prototype=j,n}}();n.templateSettings={escape:Ee,evaluate:ke,interpolate:_e,variable:"",imports:{_:n}},n.prototype=r.prototype,n.prototype.constructor=n,i.prototype=Os(r.prototype),i.prototype.constructor=i,D.prototype=Os(r.prototype),D.prototype.constructor=D,Ke.prototype.clear=function(){this.__data__=us?us(null):{},this.size=0},Ke.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Ke.prototype.get=function(e){var t=this.__data__;if(us){var n=t[e];return n===Z?j:n}return La.call(t,e)?t[e]:j},Ke.prototype.has=function(e){var t=this.__data__;return us?t[e]!==j:La.call(t,e)},Ke.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=us&&t===j?Z:t,this},ot.prototype.clear=function(){this.__data__=[],this.size=0},ot.prototype.delete=function(e){var t=this.__data__,n=ht(t,e);return!(n<0||(n==t.length-1?t.pop():_a.call(t,n,1),--this.size,0))},ot.prototype.get=function(e){var t=this.__data__,n=ht(t,e);return n<0?j:t[n][1]},ot.prototype.has=function(e){return ht(this.__data__,e)>-1},ot.prototype.set=function(e,t){var n=this.__data__,r=ht(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},dt.prototype.clear=function(){this.size=0,this.__data__={hash:new Ke,map:new(as||ot),string:new Ke}},dt.prototype.delete=function(e){var t=_r(this,e).delete(e);return this.size-=t?1:0,t},dt.prototype.get=function(e){return _r(this,e).get(e)},dt.prototype.has=function(e){return _r(this,e).has(e)},dt.prototype.set=function(e,t){var n=_r(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},ut.prototype.add=ut.prototype.push=function(e){return this.__data__.set(e,Z),this},ut.prototype.has=function(e){return this.__data__.has(e)},lt.prototype.clear=function(){this.__data__=new ot,this.size=0},lt.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},lt.prototype.get=function(e){return this.__data__.get(e)},lt.prototype.has=function(e){return this.__data__.has(e)},lt.prototype.set=function(e,t){var n=this.__data__;if(n instanceof ot){var r=n.__data__;if(!as||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new dt(r)}return n.set(e,t),this.size=n.size,this};var ys=or(Ft),Is=or(Mt,!0),Ls=dr(),Ns=dr(!0),Ts=ls?function(e,t){return ls.set(e,t),e}:na,Ds=Ga?function(e,t){return Ga(e,"toString",{configurable:!0,enumerable:!1,value:ta(t),writable:!0})}:na,bs=Cn,Cs=Wa||function(e){return $t.clearTimeout(e)},Rs=os&&1/W(new os([,-0]))[1]==1/0?function(e){return new os(e)}:aa,ws=ls?function(e){return ls.get(e)}:aa,Fs=Ya?function(e){return null==e?[]:(e=ma(e),l(Ya(e),(function(t){return ka.call(e,t)})))}:oa,Ms=Ya?function(e){for(var t=[];e;)m(t,Fs(e)),e=Aa(e);return t}:oa,Ps=Ut;(is&&Ps(new is(new ArrayBuffer(1)))!=Se||as&&Ps(new as)!=de||ss&&Ps(ss.resolve())!=fe||os&&Ps(new os)!=ce||ds&&Ps(new ds)!=Be)&&(Ps=function(e){var t=Ut(e),n=t==le?e.constructor:j,r=n?ii(n):"";if(r)switch(r){case gs:return Se;case cs:return de;case ms:return fe;case ps:return ce;case Bs:return Be}return t});var As=ya?wi:da,Es=ti(Ts),ks=za||function(e,t){return $t.setTimeout(e,t)},_s=ti(Ds),Us=function(e){var t=Ni(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(Ve,(function(e,n,r,i){t.push(r?i.replace(Xe,"$1"):n||e)})),t})),xs=Cn((function(e,t){return Ci(e)?Dt(e,wt(t,1,Ci,!0)):[]})),Vs=Cn((function(e,t){var n=fi(t);return Ci(n)&&(n=j),Ci(e)?Dt(e,wt(t,1,Ci,!0),kr(n,2)):[]})),Gs=Cn((function(e,t){var n=fi(t);return Ci(n)&&(n=j),Ci(e)?Dt(e,wt(t,1,Ci,!0),j,n):[]})),Ws=Cn((function(e){var t=c(e,Yn);return t.length&&t[0]===e[0]?jt(t):[]})),qs=Cn((function(e){var t=fi(e),n=c(e,Yn);return t===fi(n)?t=j:n.pop(),n.length&&n[0]===e[0]?jt(n,kr(t,2)):[]})),zs=Cn((function(e){var t=fi(e),n=c(e,Yn);return(t="function"==typeof t?t:j)&&n.pop(),n.length&&n[0]===e[0]?jt(n,j,t):[]})),Hs=Cn(gi),js=Fr((function(e,t){var n=null==e?0:e.length,r=yt(e,t);return Tn(e,c(t,(function(e){return qr(e,n)?+e:e})).sort(er)),r})),Ys=Cn((function(e){return Vn(wt(e,1,Ci,!0))})),Zs=Cn((function(e){var t=fi(e);return Ci(t)&&(t=j),Vn(wt(e,1,Ci,!0),kr(t,2))})),Ks=Cn((function(e){var t=fi(e);return t="function"==typeof t?t:j,Vn(wt(e,1,Ci,!0),j,t)})),Xs=Cn((function(e,t){return Ci(e)?Dt(e,t):[]})),$s=Cn((function(e){return Hn(l(e,Ci))})),Qs=Cn((function(e){var t=fi(e);return Ci(t)&&(t=j),Hn(l(e,Ci),kr(t,2))})),Js=Cn((function(e){var t=fi(e);return t="function"==typeof t?t:j,Hn(l(e,Ci),j,t)})),eo=Cn(mi),to=Cn((function(e){var t=e.length,n=t>1?e[t-1]:j;return n="function"==typeof n?(e.pop(),n):j,pi(e,n)})),no=Fr((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,a=function(t){return yt(t,e)};return!(t>1||this.__actions__.length)&&r instanceof D&&qr(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:hi,args:[a],thisArg:j}),new i(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(j),e}))):this.thru(a)})),ro=ar((function(e,t,n){La.call(e,n)?++e[n]:Ot(e,n,1)})),io=cr(oi),ao=cr(di),so=ar((function(e,t,n){La.call(e,n)?e[n].push(t):Ot(e,n,[t])})),oo=Cn((function(e,t,n){var r=-1,i="function"==typeof t,s=bi(e)?ua(e.length):[];return ys(e,(function(e){s[++r]=i?a(t,e,n):Kt(e,t,n)})),s})),uo=ar((function(e,t,n){Ot(e,n,t)})),lo=ar((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),fo=Cn((function(e,t){if(null==e)return[];var n=t.length;return n>1&&zr(e,t[0],t[1])?t=[]:n>2&&zr(t[0],t[1],t[2])&&(t=[t[0]]),In(e,wt(t,1),[])})),go=qa||function(){return $t.Date.now()},co=Cn((function(e,t,n){var r=1;if(n.length){var i=G(n,Er(co));r|=32}return Dr(e,r,t,n,i)})),mo=Cn((function(e,t,n){var r=3;if(n.length){var i=G(n,Er(mo));r|=32}return Dr(t,r,e,n,i)})),po=Cn((function(e,t){return Tt(e,1,t)})),Bo=Cn((function(e,t,n){return Tt(e,qi(t)||0,n)}));Ni.Cache=dt;var ho=bs((function(e,t){var n=(t=1==t.length&&No(t[0])?c(t[0],w(kr())):c(wt(t,1),w(kr()))).length;return Cn((function(r){for(var i=-1,s=Ja(r.length,n);++i<s;)r[i]=t[i].call(this,r[i]);return a(e,this,r)}))})),So=Cn((function(e,t){return Dr(e,32,j,t,G(t,Er(So)))})),vo=Cn((function(e,t){return Dr(e,64,j,t,G(t,Er(vo)))})),Oo=Fr((function(e,t){return Dr(e,256,j,j,j,t)})),yo=Ir(xt),Io=Ir((function(e,t){return e>=t})),Lo=Xt(function(){return arguments}())?Xt:function(e){return Ai(e)&&La.call(e,"callee")&&!ka.call(e,"callee")},No=ua.isArray,To=rn?w(rn):function(e){return Ai(e)&&Ut(e)==he},Do=Za||da,bo=an?w(an):function(e){return Ai(e)&&Ut(e)==ie},Co=sn?w(sn):function(e){return Ai(e)&&Ps(e)==de},Ro=on?w(on):function(e){return Ai(e)&&Ut(e)==ge},wo=dn?w(dn):function(e){return Ai(e)&&Ps(e)==ce},Fo=un?w(un):function(e){return Ai(e)&&Mi(e.length)&&!!zt[Ut(e)]},Mo=Ir(Bn),Po=Ir((function(e,t){return e<=t})),Ao=sr((function(e,t){if(Yr(t)||bi(t))return ir(t,Zi(t),e),j;for(var n in t)La.call(t,n)&&Bt(e,n,t[n])})),Eo=sr((function(e,t){ir(t,Ki(t),e)})),ko=sr((function(e,t,n,r){ir(t,Ki(t),e,r)})),_o=sr((function(e,t,n,r){ir(t,Zi(t),e,r)})),Uo=Fr(yt),xo=Cn((function(e,t){e=ma(e);var n=-1,r=t.length,i=r>2?t[2]:j;for(i&&zr(t[0],t[1],i)&&(r=1);++n<r;)for(var a=t[n],s=Ki(a),o=-1,d=s.length;++o<d;){var u=s[o],l=e[u];(l===j||Di(l,Oa[u])&&!La.call(e,u))&&(e[u]=a[u])}return e})),Vo=Cn((function(e){return e.push(j,Cr),a(Ho,j,e)})),Go=Br((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Da.call(t)),e[t]=n}),ta(na)),Wo=Br((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Da.call(t)),La.call(e,t)?e[t].push(n):e[t]=[n]}),kr),qo=Cn(Kt),zo=sr((function(e,t,n){On(e,t,n)})),Ho=sr((function(e,t,n,r){On(e,t,n,r)})),jo=Fr((function(e,t){var n={};if(null==e)return n;var r=!1;t=c(t,(function(t){return t=Kn(t,e),r||(r=t.length>1),t})),ir(e,Pr(e),n),r&&(n=Lt(n,7,Rr));for(var i=t.length;i--;)Gn(n,t[i]);return n})),Yo=Fr((function(e,t){return null==e?{}:function(e,t){return Ln(e,t,(function(t,n){return Yi(e,n)}))}(e,t)})),Zo=Tr(Zi),Ko=Tr(Ki),Xo=lr((function(e,t,n){return t=t.toLowerCase(),e+(n?Qi(t):t)})),$o=lr((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Qo=lr((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Jo=ur("toLowerCase"),ed=lr((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),td=lr((function(e,t,n){return e+(n?" ":"")+rd(t)})),nd=lr((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),rd=ur("toUpperCase"),id=Cn((function(e,t){try{return a(e,j,t)}catch(e){return Ri(e)?e:new fa(e)}})),ad=Fr((function(e,t){return o(t,(function(t){t=ri(t),Ot(e,t,co(e[t],e))})),e})),sd=mr(),od=mr(!0),dd=Cn((function(e,t){return function(n){return Kt(n,e,t)}})),ud=Cn((function(e,t){return function(n){return Kt(e,n,t)}})),ld=Sr(c),fd=Sr(u),gd=Sr(h),cd=yr(),md=yr(!0),pd=hr((function(e,t){return e+t}),0),Bd=Nr("ceil"),hd=hr((function(e,t){return e/t}),1),Sd=Nr("floor"),vd=hr((function(e,t){return e*t}),1),Od=Nr("round"),yd=hr((function(e,t){return e-t}),0);return n.after=function(e,t){if("function"!=typeof t)throw new ha(Y);return e=Gi(e),function(){if(--e<1)return t.apply(this,arguments)}},n.ary=yi,n.assign=Ao,n.assignIn=Eo,n.assignInWith=ko,n.assignWith=_o,n.at=Uo,n.before=Ii,n.bind=co,n.bindAll=ad,n.bindKey=mo,n.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return No(e)?e:[e]},n.chain=Bi,n.chunk=function(e,t,n){t=(n?zr(e,t,n):t===j)?1:Qa(Gi(t),0);var r=null==e?0:e.length;if(!r||t<1)return[];for(var i=0,a=0,s=ua(Ha(r/t));i<r;)s[a++]=Pn(e,i,i+=t);return s},n.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,i=[];++t<n;){var a=e[t];a&&(i[r++]=a)}return i},n.concat=function(){var e=arguments.length;if(!e)return[];for(var t=ua(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return m(No(n)?rr(n):[n],wt(t,1))},n.cond=function(e){var t=null==e?0:e.length,n=kr();return e=t?c(e,(function(e){if("function"!=typeof e[1])throw new ha(Y);return[n(e[0]),e[1]]})):[],Cn((function(n){for(var r=-1;++r<t;){var i=e[r];if(a(i[0],this,n))return a(i[1],this,n)}}))},n.conforms=function(e){return function(e){var t=Zi(e);return function(n){return Nt(n,e,t)}}(Lt(e,1))},n.constant=ta,n.countBy=ro,n.create=function(e,t){var n=Os(e);return null==t?n:vt(n,t)},n.curry=function e(t,n,r){var i=Dr(t,8,j,j,j,j,j,n=r?j:n);return i.placeholder=e.placeholder,i},n.curryRight=function e(t,n,r){var i=Dr(t,16,j,j,j,j,j,n=r?j:n);return i.placeholder=e.placeholder,i},n.debounce=Li,n.defaults=xo,n.defaultsDeep=Vo,n.defer=po,n.delay=Bo,n.difference=xs,n.differenceBy=Vs,n.differenceWith=Gs,n.drop=function(e,t,n){var r=null==e?0:e.length;return r?Pn(e,(t=n||t===j?1:Gi(t))<0?0:t,r):[]},n.dropRight=function(e,t,n){var r=null==e?0:e.length;return r?Pn(e,0,(t=r-(t=n||t===j?1:Gi(t)))<0?0:t):[]},n.dropRightWhile=function(e,t){return e&&e.length?qn(e,kr(t,3),!0,!0):[]},n.dropWhile=function(e,t){return e&&e.length?qn(e,kr(t,3),!0):[]},n.fill=function(e,t,n,r){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&zr(e,t,n)&&(n=0,r=i),function(e,t,n,r){var i=e.length;for((n=Gi(n))<0&&(n=-n>i?0:i+n),(r=r===j||r>i?i:Gi(r))<0&&(r+=i),r=n>r?0:Wi(r);n<r;)e[n++]=t;return e}(e,t,n,r)):[]},n.filter=function(e,t){return(No(e)?l:Rt)(e,kr(t,3))},n.flatMap=function(e,t){return wt(Oi(e,t),1)},n.flatMapDeep=function(e,t){return wt(Oi(e,t),1/0)},n.flatMapDepth=function(e,t,n){return n=n===j?1:Gi(n),wt(Oi(e,t),n)},n.flatten=ui,n.flattenDeep=function(e){return null!=e&&e.length?wt(e,1/0):[]},n.flattenDepth=function(e,t){return null!=e&&e.length?wt(e,t=t===j?1:Gi(t)):[]},n.flip=function(e){return Dr(e,512)},n.flow=sd,n.flowRight=od,n.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var i=e[t];r[i[0]]=i[1]}return r},n.functions=function(e){return null==e?[]:Pt(e,Zi(e))},n.functionsIn=function(e){return null==e?[]:Pt(e,Ki(e))},n.groupBy=so,n.initial=function(e){return null!=e&&e.length?Pn(e,0,-1):[]},n.intersection=Ws,n.intersectionBy=qs,n.intersectionWith=zs,n.invert=Go,n.invertBy=Wo,n.invokeMap=oo,n.iteratee=ra,n.keyBy=uo,n.keys=Zi,n.keysIn=Ki,n.map=Oi,n.mapKeys=function(e,t){var n={};return t=kr(t,3),Ft(e,(function(e,r,i){Ot(n,t(e,r,i),e)})),n},n.mapValues=function(e,t){var n={};return t=kr(t,3),Ft(e,(function(e,r,i){Ot(n,r,t(e,r,i))})),n},n.matches=function(e){return Sn(Lt(e,1))},n.matchesProperty=function(e,t){return vn(e,Lt(t,1))},n.memoize=Ni,n.merge=zo,n.mergeWith=Ho,n.method=dd,n.methodOf=ud,n.mixin=ia,n.negate=Ti,n.nthArg=function(e){return e=Gi(e),Cn((function(t){return yn(t,e)}))},n.omit=jo,n.omitBy=function(e,t){return Xi(e,Ti(kr(t)))},n.once=function(e){return Ii(2,e)},n.orderBy=function(e,t,n,r){return null==e?[]:(No(t)||(t=null==t?[]:[t]),No(n=r?j:n)||(n=null==n?[]:[n]),In(e,t,n))},n.over=ld,n.overArgs=ho,n.overEvery=fd,n.overSome=gd,n.partial=So,n.partialRight=vo,n.partition=lo,n.pick=Yo,n.pickBy=Xi,n.property=sa,n.propertyOf=function(e){return function(t){return null==e?j:At(e,t)}},n.pull=Hs,n.pullAll=gi,n.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Nn(e,t,kr(n,2)):e},n.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Nn(e,t,j,n):e},n.pullAt=js,n.range=cd,n.rangeRight=md,n.rearg=Oo,n.reject=function(e,t){return(No(e)?l:Rt)(e,Ti(kr(t,3)))},n.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,i=[],a=e.length;for(t=kr(t,3);++r<a;){var s=e[r];t(s,r,e)&&(n.push(s),i.push(r))}return Tn(e,i),n},n.rest=function(e,t){if("function"!=typeof e)throw new ha(Y);return Cn(e,t=t===j?t:Gi(t))},n.reverse=ci,n.sampleSize=function(e,t,n){return t=(n?zr(e,t,n):t===j)?1:Gi(t),(No(e)?ct:wn)(e,t)},n.set=function(e,t,n){return null==e?e:Fn(e,t,n)},n.setWith=function(e,t,n,r){return r="function"==typeof r?r:j,null==e?e:Fn(e,t,n,r)},n.shuffle=function(e){return(No(e)?mt:Mn)(e)},n.slice=function(e,t,n){var r=null==e?0:e.length;return r?(n&&"number"!=typeof n&&zr(e,t,n)?(t=0,n=r):(t=null==t?0:Gi(t),n=n===j?r:Gi(n)),Pn(e,t,n)):[]},n.sortBy=fo,n.sortedUniq=function(e){return e&&e.length?_n(e):[]},n.sortedUniqBy=function(e,t){return e&&e.length?_n(e,kr(t,2)):[]},n.split=function(e,t,n){return n&&"number"!=typeof n&&zr(e,t,n)&&(t=n=j),(n=n===j?J:n>>>0)?(e=Hi(e))&&("string"==typeof t||null!=t&&!Ro(t))&&(!(t=xn(t))&&_(e))?Xn(z(e),0,n):e.split(t,n):[]},n.spread=function(e,t){if("function"!=typeof e)throw new ha(Y);return t=null==t?0:Qa(Gi(t),0),Cn((function(n){var r=n[t],i=Xn(n,0,t);return r&&m(i,r),a(e,this,i)}))},n.tail=function(e){var t=null==e?0:e.length;return t?Pn(e,1,t):[]},n.take=function(e,t,n){return e&&e.length?Pn(e,0,(t=n||t===j?1:Gi(t))<0?0:t):[]},n.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?Pn(e,(t=r-(t=n||t===j?1:Gi(t)))<0?0:t,r):[]},n.takeRightWhile=function(e,t){return e&&e.length?qn(e,kr(t,3),!1,!0):[]},n.takeWhile=function(e,t){return e&&e.length?qn(e,kr(t,3)):[]},n.tap=function(e,t){return t(e),e},n.throttle=function(e,t,n){var r=!0,i=!0;if("function"!=typeof e)throw new ha(Y);return Pi(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Li(e,t,{leading:r,maxWait:t,trailing:i})},n.thru=hi,n.toArray=xi,n.toPairs=Zo,n.toPairsIn=Ko,n.toPath=function(e){return No(e)?c(e,ri):Ui(e)?[e]:rr(Us(Hi(e)))},n.toPlainObject=zi,n.transform=function(e,t,n){var r=No(e),i=r||Do(e)||Fo(e);if(t=kr(t,4),null==n){var a=e&&e.constructor;n=i?r?new a:[]:Pi(e)&&wi(a)?Os(Aa(e)):{}}return(i?o:Ft)(e,(function(e,r,i){return t(n,e,r,i)})),n},n.unary=function(e){return yi(e,1)},n.union=Ys,n.unionBy=Zs,n.unionWith=Ks,n.uniq=function(e){return e&&e.length?Vn(e):[]},n.uniqBy=function(e,t){return e&&e.length?Vn(e,kr(t,2)):[]},n.uniqWith=function(e,t){return t="function"==typeof t?t:j,e&&e.length?Vn(e,j,t):[]},n.unset=function(e,t){return null==e||Gn(e,t)},n.unzip=mi,n.unzipWith=pi,n.update=function(e,t,n){return null==e?e:Wn(e,t,Zn(n))},n.updateWith=function(e,t,n,r){return r="function"==typeof r?r:j,null==e?e:Wn(e,t,Zn(n),r)},n.values=$i,n.valuesIn=function(e){return null==e?[]:F(e,Ki(e))},n.without=Xs,n.words=ea,n.wrap=function(e,t){return So(Zn(t),e)},n.xor=$s,n.xorBy=Qs,n.xorWith=Js,n.zip=eo,n.zipObject=function(e,t){return jn(e||[],t||[],Bt)},n.zipObjectDeep=function(e,t){return jn(e||[],t||[],Fn)},n.zipWith=to,n.entries=Zo,n.entriesIn=Ko,n.extend=Eo,n.extendWith=ko,ia(n,n),n.add=pd,n.attempt=id,n.camelCase=Xo,n.capitalize=Qi,n.ceil=Bd,n.clamp=function(e,t,n){return n===j&&(n=t,t=j),n!==j&&(n=(n=qi(n))==n?n:0),t!==j&&(t=(t=qi(t))==t?t:0),It(qi(e),t,n)},n.clone=function(e){return Lt(e,4)},n.cloneDeep=function(e){return Lt(e,5)},n.cloneDeepWith=function(e,t){return Lt(e,5,t="function"==typeof t?t:j)},n.cloneWith=function(e,t){return Lt(e,4,t="function"==typeof t?t:j)},n.conformsTo=function(e,t){return null==t||Nt(e,t,Zi(t))},n.deburr=Ji,n.defaultTo=function(e,t){return null==e||e!=e?t:e},n.divide=hd,n.endsWith=function(e,t,n){e=Hi(e),t=xn(t);var r=e.length,i=n=n===j?r:It(Gi(n),0,r);return(n-=t.length)>=0&&e.slice(n,i)==t},n.eq=Di,n.escape=function(e){return(e=Hi(e))&&Ae.test(e)?e.replace(Me,gn):e},n.escapeRegExp=function(e){return(e=Hi(e))&&We.test(e)?e.replace(Ge,"\\$&"):e},n.every=function(e,t,n){var r=No(e)?u:bt;return n&&zr(e,t,n)&&(t=j),r(e,kr(t,3))},n.find=io,n.findIndex=oi,n.findKey=function(e,t){return v(e,kr(t,3),Ft)},n.findLast=ao,n.findLastIndex=di,n.findLastKey=function(e,t){return v(e,kr(t,3),Mt)},n.floor=Sd,n.forEach=Si,n.forEachRight=vi,n.forIn=function(e,t){return null==e?e:Ls(e,kr(t,3),Ki)},n.forInRight=function(e,t){return null==e?e:Ns(e,kr(t,3),Ki)},n.forOwn=function(e,t){return e&&Ft(e,kr(t,3))},n.forOwnRight=function(e,t){return e&&Mt(e,kr(t,3))},n.get=ji,n.gt=yo,n.gte=Io,n.has=function(e,t){return null!=e&&Vr(e,t,Vt)},n.hasIn=Yi,n.head=li,n.identity=na,n.includes=function(e,t,n,r){e=bi(e)?e:$i(e),n=n&&!r?Gi(n):0;var i=e.length;return n<0&&(n=Qa(i+n,0)),_i(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&y(e,t,n)>-1},n.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:Gi(n);return i<0&&(i=Qa(r+i,0)),y(e,t,i)},n.inRange=function(e,t,n){return t=Vi(t),n===j?(n=t,t=0):n=Vi(n),function(e,t,n){return e>=Ja(t,n)&&e<Qa(t,n)}(e=qi(e),t,n)},n.invoke=qo,n.isArguments=Lo,n.isArray=No,n.isArrayBuffer=To,n.isArrayLike=bi,n.isArrayLikeObject=Ci,n.isBoolean=function(e){return!0===e||!1===e||Ai(e)&&Ut(e)==re},n.isBuffer=Do,n.isDate=bo,n.isElement=function(e){return Ai(e)&&1===e.nodeType&&!ki(e)},n.isEmpty=function(e){if(null==e)return!0;if(bi(e)&&(No(e)||"string"==typeof e||"function"==typeof e.splice||Do(e)||Fo(e)||Lo(e)))return!e.length;var t=Ps(e);if(t==de||t==ce)return!e.size;if(Yr(e))return!ln(e).length;for(var n in e)if(La.call(e,n))return!1;return!0},n.isEqual=function(e,t){return Qt(e,t)},n.isEqualWith=function(e,t,n){var r=(n="function"==typeof n?n:j)?n(e,t):j;return r===j?Qt(e,t,j,n):!!r},n.isError=Ri,n.isFinite=function(e){return"number"==typeof e&&Ka(e)},n.isFunction=wi,n.isInteger=Fi,n.isLength=Mi,n.isMap=Co,n.isMatch=function(e,t){return e===t||Jt(e,t,Ur(t))},n.isMatchWith=function(e,t,n){return n="function"==typeof n?n:j,Jt(e,t,Ur(t),n)},n.isNaN=function(e){return Ei(e)&&e!=+e},n.isNative=function(e){if(As(e))throw new fa("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return tn(e)},n.isNil=function(e){return null==e},n.isNull=function(e){return null===e},n.isNumber=Ei,n.isObject=Pi,n.isObjectLike=Ai,n.isPlainObject=ki,n.isRegExp=Ro,n.isSafeInteger=function(e){return Fi(e)&&e>=-$&&e<=$},n.isSet=wo,n.isString=_i,n.isSymbol=Ui,n.isTypedArray=Fo,n.isUndefined=function(e){return e===j},n.isWeakMap=function(e){return Ai(e)&&Ps(e)==Be},n.isWeakSet=function(e){return Ai(e)&&"[object WeakSet]"==Ut(e)},n.join=function(e,t){return null==e?"":Xa.call(e,t)},n.kebabCase=$o,n.last=fi,n.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r;return n!==j&&(i=(i=Gi(n))<0?Qa(r+i,0):Ja(i,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,i):O(e,L,i,!0)},n.lowerCase=Qo,n.lowerFirst=Jo,n.lt=Mo,n.lte=Po,n.max=function(e){return e&&e.length?Ct(e,na,xt):j},n.maxBy=function(e,t){return e&&e.length?Ct(e,kr(t,2),xt):j},n.mean=function(e){return N(e,na)},n.meanBy=function(e,t){return N(e,kr(t,2))},n.min=function(e){return e&&e.length?Ct(e,na,Bn):j},n.minBy=function(e,t){return e&&e.length?Ct(e,kr(t,2),Bn):j},n.stubArray=oa,n.stubFalse=da,n.stubObject=function(){return{}},n.stubString=function(){return""},n.stubTrue=function(){return!0},n.multiply=vd,n.nth=function(e,t){return e&&e.length?yn(e,Gi(t)):j},n.noConflict=function(){return $t._===this&&($t._=Ca),this},n.noop=aa,n.now=go,n.pad=function(e,t,n){e=Hi(e);var r=(t=Gi(t))?q(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return vr(ja(i),n)+e+vr(Ha(i),n)},n.padEnd=function(e,t,n){e=Hi(e);var r=(t=Gi(t))?q(e):0;return t&&r<t?e+vr(t-r,n):e},n.padStart=function(e,t,n){e=Hi(e);var r=(t=Gi(t))?q(e):0;return t&&r<t?vr(t-r,n)+e:e},n.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),ts(Hi(e).replace(ze,""),t||0)},n.random=function(e,t,n){if(n&&"boolean"!=typeof n&&zr(e,t,n)&&(t=n=j),n===j&&("boolean"==typeof t?(n=t,t=j):"boolean"==typeof e&&(n=e,e=j)),e===j&&t===j?(e=0,t=1):(e=Vi(e),t===j?(t=e,e=0):t=Vi(t)),e>t){var r=e;e=t,t=r}if(n||e%1||t%1){var i=ns();return Ja(e+i*(t-e+Yt("1e-"+((i+"").length-1))),t)}return Dn(e,t)},n.reduce=function(e,t,n){var r=No(e)?p:b,i=arguments.length<3;return r(e,kr(t,4),n,i,ys)},n.reduceRight=function(e,t,n){var r=No(e)?B:b,i=arguments.length<3;return r(e,kr(t,4),n,i,Is)},n.repeat=function(e,t,n){return t=(n?zr(e,t,n):t===j)?1:Gi(t),bn(Hi(e),t)},n.replace=function(){var e=arguments,t=Hi(e[0]);return e.length<3?t:t.replace(e[1],e[2])},n.result=function(e,t,n){var r=-1,i=(t=Kn(t,e)).length;for(i||(i=1,e=j);++r<i;){var a=null==e?j:e[ri(t[r])];a===j&&(r=i,a=n),e=wi(a)?a.call(e):a}return e},n.round=Od,n.runInContext=e,n.sample=function(e){return(No(e)?gt:Rn)(e)},n.size=function(e){if(null==e)return 0;if(bi(e))return _i(e)?q(e):e.length;var t=Ps(e);return t==de||t==ce?e.size:ln(e).length},n.snakeCase=ed,n.some=function(e,t,n){var r=No(e)?h:An;return n&&zr(e,t,n)&&(t=j),r(e,kr(t,3))},n.sortedIndex=function(e,t){return En(e,t)},n.sortedIndexBy=function(e,t,n){return kn(e,t,kr(n,2))},n.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=En(e,t);if(r<n&&Di(e[r],t))return r}return-1},n.sortedLastIndex=function(e,t){return En(e,t,!0)},n.sortedLastIndexBy=function(e,t,n){return kn(e,t,kr(n,2),!0)},n.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=En(e,t,!0)-1;if(Di(e[n],t))return n}return-1},n.startCase=td,n.startsWith=function(e,t,n){return e=Hi(e),n=null==n?0:It(Gi(n),0,e.length),t=xn(t),e.slice(n,n+t.length)==t},n.subtract=yd,n.sum=function(e){return e&&e.length?C(e,na):0},n.sumBy=function(e,t){return e&&e.length?C(e,kr(t,2)):0},n.template=function(e,t,r){var i=n.templateSettings;r&&zr(e,t,r)&&(t=j),e=Hi(e),t=ko({},t,i,br);var a,s,o=ko({},t.imports,i.imports,br),d=Zi(o),u=F(o,d),l=0,f=t.interpolate||at,g="__p += '",c=pa((t.escape||at).source+"|"+f.source+"|"+(f===_e?$e:at).source+"|"+(t.evaluate||at).source+"|$","g"),m="//# sourceURL="+(La.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++qt+"]")+"\n";e.replace(c,(function(t,n,r,i,o,d){return r||(r=i),g+=e.slice(l,d).replace(st,k),n&&(a=!0,g+="' +\n__e("+n+") +\n'"),o&&(s=!0,g+="';\n"+o+";\n__p += '"),r&&(g+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=d+t.length,t})),g+="';\n";var p=La.call(t,"variable")&&t.variable;p||(g="with (obj) {\n"+g+"\n}\n"),g=(s?g.replace(Ce,""):g).replace(Re,"$1").replace(we,"$1;"),g="function("+(p||"obj")+") {\n"+(p?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(s?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+g+"return __p\n}";var B=id((function(){return ga(d,m+"return "+g).apply(j,u)}));if(B.source=g,Ri(B))throw B;return B},n.times=function(e,t){if((e=Gi(e))<1||e>$)return[];var n=J,r=Ja(e,J);t=kr(t),e-=J;for(var i=R(r,t);++n<e;)t(n);return i},n.toFinite=Vi,n.toInteger=Gi,n.toLength=Wi,n.toLower=function(e){return Hi(e).toLowerCase()},n.toNumber=qi,n.toSafeInteger=function(e){return e?It(Gi(e),-$,$):0===e?e:0},n.toString=Hi,n.toUpper=function(e){return Hi(e).toUpperCase()},n.trim=function(e,t,n){if((e=Hi(e))&&(n||t===j))return e.replace(qe,"");if(!e||!(t=xn(t)))return e;var r=z(e),i=z(t);return Xn(r,P(r,i),A(r,i)+1).join("")},n.trimEnd=function(e,t,n){if((e=Hi(e))&&(n||t===j))return e.replace(He,"");if(!e||!(t=xn(t)))return e;var r=z(e);return Xn(r,0,A(r,z(t))+1).join("")},n.trimStart=function(e,t,n){if((e=Hi(e))&&(n||t===j))return e.replace(ze,"");if(!e||!(t=xn(t)))return e;var r=z(e);return Xn(r,P(r,z(t))).join("")},n.truncate=function(e,t){var n=30,r="...";if(Pi(t)){var i="separator"in t?t.separator:i;n="length"in t?Gi(t.length):n,r="omission"in t?xn(t.omission):r}var a=(e=Hi(e)).length;if(_(e)){var s=z(e);a=s.length}if(n>=a)return e;var o=n-q(r);if(o<1)return r;var d=s?Xn(s,0,o).join(""):e.slice(0,o);if(i===j)return d+r;if(s&&(o+=d.length-o),Ro(i)){if(e.slice(o).search(i)){var u,l=d;for(i.global||(i=pa(i.source,Hi(Qe.exec(i))+"g")),i.lastIndex=0;u=i.exec(l);)var f=u.index;d=d.slice(0,f===j?o:f)}}else if(e.indexOf(xn(i),o)!=o){var g=d.lastIndexOf(i);g>-1&&(d=d.slice(0,g))}return d+r},n.unescape=function(e){return(e=Hi(e))&&Pe.test(e)?e.replace(Fe,cn):e},n.uniqueId=function(e){var t=++Na;return Hi(e)+t},n.upperCase=nd,n.upperFirst=rd,n.each=Si,n.eachRight=vi,n.first=li,ia(n,function(){var e={};return Ft(n,(function(t,r){La.call(n.prototype,r)||(e[r]=t)})),e}(),{chain:!1}),n.VERSION="4.17.20",o(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){n[e].placeholder=n})),o(["drop","take"],(function(e,t){D.prototype[e]=function(n){n=n===j?1:Qa(Gi(n),0);var r=this.__filtered__&&!t?new D(this):this.clone();return r.__filtered__?r.__takeCount__=Ja(n,r.__takeCount__):r.__views__.push({size:Ja(n,J),type:e+(r.__dir__<0?"Right":"")}),r},D.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),o(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;D.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:kr(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),o(["head","last"],(function(e,t){var n="take"+(t?"Right":"");D.prototype[e]=function(){return this[n](1).value()[0]}})),o(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");D.prototype[e]=function(){return this.__filtered__?new D(this):this[n](1)}})),D.prototype.compact=function(){return this.filter(na)},D.prototype.find=function(e){return this.filter(e).head()},D.prototype.findLast=function(e){return this.reverse().find(e)},D.prototype.invokeMap=Cn((function(e,t){return"function"==typeof e?new D(this):this.map((function(n){return Kt(n,e,t)}))})),D.prototype.reject=function(e){return this.filter(Ti(kr(e)))},D.prototype.slice=function(e,t){e=Gi(e);var n=this;return n.__filtered__&&(e>0||t<0)?new D(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==j&&(n=(t=Gi(t))<0?n.dropRight(-t):n.take(t-e)),n)},D.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},D.prototype.toArray=function(){return this.take(J)},Ft(D.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),a=/^(?:head|last)$/.test(t),s=n[a?"take"+("last"==t?"Right":""):t],o=a||/^find/.test(t);s&&(n.prototype[t]=function(){var t=this.__wrapped__,d=a?[1]:arguments,u=t instanceof D,l=d[0],f=u||No(t),g=function(e){var t=s.apply(n,m([e],d));return a&&c?t[0]:t};f&&r&&"function"==typeof l&&1!=l.length&&(u=f=!1);var c=this.__chain__,p=!!this.__actions__.length,B=o&&!c,h=u&&!p;if(!o&&f){t=h?t:new D(this);var S=e.apply(t,d);return S.__actions__.push({func:hi,args:[g],thisArg:j}),new i(S,c)}return B&&h?e.apply(this,d):(S=this.thru(g),B?a?S.value()[0]:S.value():S)})})),o(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Sa[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",i=/^(?:pop|shift)$/.test(e);n.prototype[e]=function(){var e=arguments;if(i&&!this.__chain__){var n=this.value();return t.apply(No(n)?n:[],e)}return this[r]((function(n){return t.apply(No(n)?n:[],e)}))}})),Ft(D.prototype,(function(e,t){var r=n[t];if(r){var i=r.name+"";La.call(fs,i)||(fs[i]=[]),fs[i].push({name:t,func:r})}})),fs[pr(j,2).name]=[{name:"wrapper",func:j}],D.prototype.clone=function(){var e=new D(this.__wrapped__);return e.__actions__=rr(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=rr(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=rr(this.__views__),e},D.prototype.reverse=function(){if(this.__filtered__){var e=new D(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},D.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=No(e),r=t<0,i=n?e.length:0,a=function(e,t,n){for(var r=-1,i=n.length;++r<i;){var a=n[r],s=a.size;switch(a.type){case"drop":e+=s;break;case"dropRight":t-=s;break;case"take":t=Ja(t,e+s);break;case"takeRight":e=Qa(e,t-s)}}return{start:e,end:t}}(0,i,this.__views__),s=a.start,o=a.end,d=o-s,u=r?o:s-1,l=this.__iteratees__,f=l.length,g=0,c=Ja(d,this.__takeCount__);if(!n||!r&&i==d&&c==d)return zn(e,this.__actions__);var m=[];e:for(;d--&&g<c;){for(var p=-1,B=e[u+=t];++p<f;){var h=l[p],S=h.iteratee,v=h.type,O=S(B);if(2==v)B=O;else if(!O){if(1==v)continue e;break e}}m[g++]=B}return m},n.prototype.at=no,n.prototype.chain=function(){return Bi(this)},n.prototype.commit=function(){return new i(this.value(),this.__chain__)},n.prototype.next=function(){this.__values__===j&&(this.__values__=xi(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?j:this.__values__[this.__index__++]}},n.prototype.plant=function(e){for(var t,n=this;n instanceof r;){var i=si(n);i.__index__=0,i.__values__=j,t?a.__wrapped__=i:t=i;var a=i;n=n.__wrapped__}return a.__wrapped__=e,t},n.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof D){var t=e;return this.__actions__.length&&(t=new D(this)),(t=t.reverse()).__actions__.push({func:hi,args:[ci],thisArg:j}),new i(t,this.__chain__)}return this.thru(ci)},n.prototype.toJSON=n.prototype.valueOf=n.prototype.value=function(){return zn(this.__wrapped__,this.__actions__)},n.prototype.first=n.prototype.head,xa&&(n.prototype[xa]=function(){return this}),n}();$t._=mn,void 0===(i=function(){return mn}.call(t,n,t,r))||(r.exports=i)}).call(this)}).call(this,n(2),n(10)(e))},function(e,t,n){var r=n(26),i=n(27),a=Array.prototype.push;function s(e,t){return 2==t?function(t,n){return e(t,n)}:function(t){return e(t)}}function o(e){for(var t=e?e.length:0,n=Array(t);t--;)n[t]=e[t];return n}function d(e,t){return function(){var n=arguments.length;if(n){for(var r=Array(n);n--;)r[n]=arguments[n];var i=r[0]=t.apply(void 0,r);return e.apply(void 0,r),i}}}e.exports=function e(t,n,u,l){var f="function"==typeof n,g=n===Object(n);if(g&&(l=u,u=n,n=void 0),null==u)throw new TypeError;l||(l={});var c=!("cap"in l)||l.cap,m=!("curry"in l)||l.curry,p=!("fixed"in l)||l.fixed,B=!("immutable"in l)||l.immutable,h=!("rearg"in l)||l.rearg,S=f?u:i,v="curry"in l&&l.curry,O="fixed"in l&&l.fixed,y="rearg"in l&&l.rearg,I=f?u.runInContext():void 0,L=f?u:{ary:t.ary,assign:t.assign,clone:t.clone,curry:t.curry,forEach:t.forEach,isArray:t.isArray,isError:t.isError,isFunction:t.isFunction,isWeakMap:t.isWeakMap,iteratee:t.iteratee,keys:t.keys,rearg:t.rearg,toInteger:t.toInteger,toPath:t.toPath},N=L.ary,T=L.assign,D=L.clone,b=L.curry,C=L.forEach,R=L.isArray,w=L.isError,F=L.isFunction,M=L.isWeakMap,P=L.keys,A=L.rearg,E=L.toInteger,k=L.toPath,_=P(r.aryMethod),U={castArray:function(e){return function(){var t=arguments[0];return R(t)?e(o(t)):e.apply(void 0,arguments)}},iteratee:function(e){return function(){var t=arguments[0],n=arguments[1],r=e(t,n),i=r.length;return c&&"number"==typeof n?(n=n>2?n-2:1,i&&i<=n?r:s(r,n)):r}},mixin:function(e){return function(t){var n=this;if(!F(n))return e(n,Object(t));var r=[];return C(P(t),(function(e){F(t[e])&&r.push([e,n.prototype[e]])})),e(n,Object(t)),C(r,(function(e){var t=e[1];F(t)?n.prototype[e[0]]=t:delete n.prototype[e[0]]})),n}},nthArg:function(e){return function(t){var n=t<0?1:E(t)+1;return b(e(t),n)}},rearg:function(e){return function(t,n){var r=n?n.length:0;return b(e(t,n),r)}},runInContext:function(n){return function(r){return e(t,n(r),l)}}};function x(e,t){if(c){var n=r.iterateeRearg[e];if(n)return function(e,t){return z(e,(function(e){var n=t.length;return function(e,t){return 2==t?function(t,n){return e.apply(void 0,arguments)}:function(t){return e.apply(void 0,arguments)}}(A(s(e,n),t),n)}))}(t,n);var i=!f&&r.iterateeAry[e];if(i)return function(e,t){return z(e,(function(e){return"function"==typeof e?s(e,t):e}))}(t,i)}return t}function V(e,t,n){if(p&&(O||!r.skipFixed[e])){var i=r.methodSpread[e],s=i&&i.start;return void 0===s?N(t,n):function(e,t){return function(){for(var n=arguments.length,r=n-1,i=Array(n);n--;)i[n]=arguments[n];var s=i[t],o=i.slice(0,t);return s&&a.apply(o,s),t!=r&&a.apply(o,i.slice(t+1)),e.apply(this,o)}}(t,s)}return t}function G(e,t,n){return h&&n>1&&(y||!r.skipRearg[e])?A(t,r.methodRearg[e]||r.aryRearg[n]):t}function W(e,t){for(var n=-1,r=(t=k(t)).length,i=r-1,a=D(Object(e)),s=a;null!=s&&++n<r;){var o=t[n],d=s[o];null==d||F(d)||w(d)||M(d)||(s[o]=D(n==i?d:Object(d))),s=s[o]}return a}function q(t,n){var i=r.aliasToReal[t]||t,a=r.remap[i]||i,s=l;return function(t){var r=f?I:L,o=f?I[a]:n,d=T(T({},s),t);return e(r,i,o,d)}}function z(e,t){return function(){var n=arguments.length;if(!n)return e();for(var r=Array(n);n--;)r[n]=arguments[n];var i=h?0:n-1;return r[i]=t(r[i]),e.apply(void 0,r)}}function H(e,t,n){var i,a=r.aliasToReal[e]||e,s=t,u=U[a];return u?s=u(t):B&&(r.mutate.array[a]?s=d(t,o):r.mutate.object[a]?s=d(t,function(e){return function(t){return e({},t)}}(t)):r.mutate.set[a]&&(s=d(t,W))),C(_,(function(e){return C(r.aryMethod[e],(function(t){if(a==t){var n=r.methodSpread[a],o=n&&n.afterRearg;return i=o?V(a,G(a,s,e),e):G(a,V(a,s,e),e),i=function(e,t,n){return v||m&&n>1?b(t,n):t}(0,i=x(a,i),e),!1}})),!i})),i||(i=s),i==t&&(i=v?b(i,1):function(){return t.apply(this,arguments)}),i.convert=q(a,t),i.placeholder=t.placeholder=n,i}if(!g)return H(n,u,S);var j=u,Y=[];return C(_,(function(e){C(r.aryMethod[e],(function(e){var t=j[r.remap[e]||e];t&&Y.push([e,H(e,t,j)])}))})),C(P(j),(function(e){var t=j[e];if("function"==typeof t){for(var n=Y.length;n--;)if(Y[n][0]==e)return;t.convert=q(e,t),Y.push([e,t])}})),C(Y,(function(e){j[e[0]]=e[1]})),j.convert=function(e){return j.runInContext.convert(e)(void 0)},j.placeholder=j,C(P(j),(function(e){C(r.realToAlias[e]||[],(function(t){j[t]=j[e]}))})),j}},function(e,t){t.aliasToReal={each:"forEach",eachRight:"forEachRight",entries:"toPairs",entriesIn:"toPairsIn",extend:"assignIn",extendAll:"assignInAll",extendAllWith:"assignInAllWith",extendWith:"assignInWith",first:"head",conforms:"conformsTo",matches:"isMatch",property:"get",__:"placeholder",F:"stubFalse",T:"stubTrue",all:"every",allPass:"overEvery",always:"constant",any:"some",anyPass:"overSome",apply:"spread",assoc:"set",assocPath:"set",complement:"negate",compose:"flowRight",contains:"includes",dissoc:"unset",dissocPath:"unset",dropLast:"dropRight",dropLastWhile:"dropRightWhile",equals:"isEqual",identical:"eq",indexBy:"keyBy",init:"initial",invertObj:"invert",juxt:"over",omitAll:"omit",nAry:"ary",path:"get",pathEq:"matchesProperty",pathOr:"getOr",paths:"at",pickAll:"pick",pipe:"flow",pluck:"map",prop:"get",propEq:"matchesProperty",propOr:"getOr",props:"at",symmetricDifference:"xor",symmetricDifferenceBy:"xorBy",symmetricDifferenceWith:"xorWith",takeLast:"takeRight",takeLastWhile:"takeRightWhile",unapply:"rest",unnest:"flatten",useWith:"overArgs",where:"conformsTo",whereEq:"isMatch",zipObj:"zipObject"},t.aryMethod={1:["assignAll","assignInAll","attempt","castArray","ceil","create","curry","curryRight","defaultsAll","defaultsDeepAll","floor","flow","flowRight","fromPairs","invert","iteratee","memoize","method","mergeAll","methodOf","mixin","nthArg","over","overEvery","overSome","rest","reverse","round","runInContext","spread","template","trim","trimEnd","trimStart","uniqueId","words","zipAll"],2:["add","after","ary","assign","assignAllWith","assignIn","assignInAllWith","at","before","bind","bindAll","bindKey","chunk","cloneDeepWith","cloneWith","concat","conformsTo","countBy","curryN","curryRightN","debounce","defaults","defaultsDeep","defaultTo","delay","difference","divide","drop","dropRight","dropRightWhile","dropWhile","endsWith","eq","every","filter","find","findIndex","findKey","findLast","findLastIndex","findLastKey","flatMap","flatMapDeep","flattenDepth","forEach","forEachRight","forIn","forInRight","forOwn","forOwnRight","get","groupBy","gt","gte","has","hasIn","includes","indexOf","intersection","invertBy","invoke","invokeMap","isEqual","isMatch","join","keyBy","lastIndexOf","lt","lte","map","mapKeys","mapValues","matchesProperty","maxBy","meanBy","merge","mergeAllWith","minBy","multiply","nth","omit","omitBy","overArgs","pad","padEnd","padStart","parseInt","partial","partialRight","partition","pick","pickBy","propertyOf","pull","pullAll","pullAt","random","range","rangeRight","rearg","reject","remove","repeat","restFrom","result","sampleSize","some","sortBy","sortedIndex","sortedIndexOf","sortedLastIndex","sortedLastIndexOf","sortedUniqBy","split","spreadFrom","startsWith","subtract","sumBy","take","takeRight","takeRightWhile","takeWhile","tap","throttle","thru","times","trimChars","trimCharsEnd","trimCharsStart","truncate","union","uniqBy","uniqWith","unset","unzipWith","without","wrap","xor","zip","zipObject","zipObjectDeep"],3:["assignInWith","assignWith","clamp","differenceBy","differenceWith","findFrom","findIndexFrom","findLastFrom","findLastIndexFrom","getOr","includesFrom","indexOfFrom","inRange","intersectionBy","intersectionWith","invokeArgs","invokeArgsMap","isEqualWith","isMatchWith","flatMapDepth","lastIndexOfFrom","mergeWith","orderBy","padChars","padCharsEnd","padCharsStart","pullAllBy","pullAllWith","rangeStep","rangeStepRight","reduce","reduceRight","replace","set","slice","sortedIndexBy","sortedLastIndexBy","transform","unionBy","unionWith","update","xorBy","xorWith","zipWith"],4:["fill","setWith","updateWith"]},t.aryRearg={2:[1,0],3:[2,0,1],4:[3,2,0,1]},t.iterateeAry={dropRightWhile:1,dropWhile:1,every:1,filter:1,find:1,findFrom:1,findIndex:1,findIndexFrom:1,findKey:1,findLast:1,findLastFrom:1,findLastIndex:1,findLastIndexFrom:1,findLastKey:1,flatMap:1,flatMapDeep:1,flatMapDepth:1,forEach:1,forEachRight:1,forIn:1,forInRight:1,forOwn:1,forOwnRight:1,map:1,mapKeys:1,mapValues:1,partition:1,reduce:2,reduceRight:2,reject:1,remove:1,some:1,takeRightWhile:1,takeWhile:1,times:1,transform:2},t.iterateeRearg={mapKeys:[1],reduceRight:[1,0]},t.methodRearg={assignInAllWith:[1,0],assignInWith:[1,2,0],assignAllWith:[1,0],assignWith:[1,2,0],differenceBy:[1,2,0],differenceWith:[1,2,0],getOr:[2,1,0],intersectionBy:[1,2,0],intersectionWith:[1,2,0],isEqualWith:[1,2,0],isMatchWith:[2,1,0],mergeAllWith:[1,0],mergeWith:[1,2,0],padChars:[2,1,0],padCharsEnd:[2,1,0],padCharsStart:[2,1,0],pullAllBy:[2,1,0],pullAllWith:[2,1,0],rangeStep:[1,2,0],rangeStepRight:[1,2,0],setWith:[3,1,2,0],sortedIndexBy:[2,1,0],sortedLastIndexBy:[2,1,0],unionBy:[1,2,0],unionWith:[1,2,0],updateWith:[3,1,2,0],xorBy:[1,2,0],xorWith:[1,2,0],zipWith:[1,2,0]},t.methodSpread={assignAll:{start:0},assignAllWith:{start:0},assignInAll:{start:0},assignInAllWith:{start:0},defaultsAll:{start:0},defaultsDeepAll:{start:0},invokeArgs:{start:2},invokeArgsMap:{start:2},mergeAll:{start:0},mergeAllWith:{start:0},partial:{start:1},partialRight:{start:1},without:{start:1},zipAll:{start:0}},t.mutate={array:{fill:!0,pull:!0,pullAll:!0,pullAllBy:!0,pullAllWith:!0,pullAt:!0,remove:!0,reverse:!0},object:{assign:!0,assignAll:!0,assignAllWith:!0,assignIn:!0,assignInAll:!0,assignInAllWith:!0,assignInWith:!0,assignWith:!0,defaults:!0,defaultsAll:!0,defaultsDeep:!0,defaultsDeepAll:!0,merge:!0,mergeAll:!0,mergeAllWith:!0,mergeWith:!0},set:{set:!0,setWith:!0,unset:!0,update:!0,updateWith:!0}},t.realToAlias=function(){var e=Object.prototype.hasOwnProperty,n=t.aliasToReal,r={};for(var i in n){var a=n[i];e.call(r,a)?r[a].push(i):r[a]=[i]}return r}(),t.remap={assignAll:"assign",assignAllWith:"assignWith",assignInAll:"assignIn",assignInAllWith:"assignInWith",curryN:"curry",curryRightN:"curryRight",defaultsAll:"defaults",defaultsDeepAll:"defaultsDeep",findFrom:"find",findIndexFrom:"findIndex",findLastFrom:"findLast",findLastIndexFrom:"findLastIndex",getOr:"get",includesFrom:"includes",indexOfFrom:"indexOf",invokeArgs:"invoke",invokeArgsMap:"invokeMap",lastIndexOfFrom:"lastIndexOf",mergeAll:"merge",mergeAllWith:"mergeWith",padChars:"pad",padCharsEnd:"padEnd",padCharsStart:"padStart",propertyOf:"get",rangeStep:"range",rangeStepRight:"rangeRight",restFrom:"rest",spreadFrom:"spread",trimChars:"trim",trimCharsEnd:"trimEnd",trimCharsStart:"trimStart",zipAll:"zip"},t.skipFixed={castArray:!0,flow:!0,flowRight:!0,iteratee:!0,mixin:!0,rearg:!0,runInContext:!0},t.skipRearg={add:!0,assign:!0,assignIn:!0,bind:!0,bindKey:!0,concat:!0,difference:!0,divide:!0,eq:!0,gt:!0,gte:!0,isEqual:!0,lt:!0,lte:!0,matchesProperty:!0,merge:!0,multiply:!0,overArgs:!0,partial:!0,partialRight:!0,propertyOf:!0,random:!0,range:!0,rangeRight:!0,subtract:!0,zip:!0,zipObject:!0,zipObjectDeep:!0}},function(e,t){e.exports={}},function(e){e.exports=JSON.parse('{"Comment":"See https://github.com/canboat/canboat for the full source code","CreatorCode":"Canboat NMEA2000 Analyzer","License":"GPL v3","Version":"1.4.0-beta","PGNs":[{"PGN":59392,"Id":"isoAcknowledgement","Description":"ISO Acknowledgement","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"control","Name":"Control","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"ACK","value":"0"},{"name":"NAK","value":"1"},{"name":"Access Denied","value":"2"},{"name":"Address Busy","value":"3"}]},{"Order":2,"Id":"groupFunction","Name":"Group Function","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":24,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":4,"Id":"pgn","Name":"PGN","Description":"Parameter Group Number of requested information","BitLength":24,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":59904,"Id":"isoRequest","Description":"ISO Request","Type":"Single","Complete":true,"Length":3,"RepeatingFields":0,"Fields":{"Field":{"Order":1,"Id":"pgn","Name":"PGN","BitLength":24,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}}},{"PGN":60160,"Id":"isoTransportProtocolDataTransfer","Description":"ISO Transport Protocol, Data Transfer","Type":"Single","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"data","Name":"Data","BitLength":56,"BitOffset":8,"BitStart":0,"Signed":false}]},{"PGN":60416,"Id":"isoTransportProtocolConnectionManagementRequestToSend","Description":"ISO Transport Protocol, Connection Management - Request To Send","Type":"Single","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"groupFunctionCode","Name":"Group Function Code","Description":"RTS","BitLength":8,"BitOffset":0,"BitStart":0,"Match":16,"Signed":false},{"Order":2,"Id":"messageSize","Name":"Message size","Description":"bytes","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"packets","Name":"Packets","Description":"packets","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":4,"Id":"packetsReply","Name":"Packets reply","Description":"packets sent in response to CTS","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"pgn","Name":"PGN","Description":"PGN","BitLength":24,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":60416,"Id":"isoTransportProtocolConnectionManagementClearToSend","Description":"ISO Transport Protocol, Connection Management - Clear To Send","Type":"Single","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"groupFunctionCode","Name":"Group Function Code","Description":"CTS","BitLength":8,"BitOffset":0,"BitStart":0,"Match":17,"Signed":false},{"Order":2,"Id":"maxPackets","Name":"Max packets","Description":"packets before waiting for next CTS","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"nextSid","Name":"Next SID","Description":"packet","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":16,"BitOffset":24,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"pgn","Name":"PGN","Description":"PGN","BitLength":24,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":60416,"Id":"isoTransportProtocolConnectionManagementEndOfMessage","Description":"ISO Transport Protocol, Connection Management - End Of Message","Type":"Single","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"groupFunctionCode","Name":"Group Function Code","Description":"EOM","BitLength":8,"BitOffset":0,"BitStart":0,"Match":19,"Signed":false},{"Order":2,"Id":"totalMessageSize","Name":"Total message size","Description":"bytes","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"totalNumberOfPacketsReceived","Name":"Total number of packets received","Description":"packets","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"pgn","Name":"PGN","Description":"PGN","BitLength":24,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":60416,"Id":"isoTransportProtocolConnectionManagementBroadcastAnnounce","Description":"ISO Transport Protocol, Connection Management - Broadcast Announce","Type":"Single","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"groupFunctionCode","Name":"Group Function Code","Description":"BAM","BitLength":8,"BitOffset":0,"BitStart":0,"Match":32,"Signed":false},{"Order":2,"Id":"messageSize","Name":"Message size","Description":"bytes","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"packets","Name":"Packets","Description":"frames","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"pgn","Name":"PGN","Description":"PGN","BitLength":24,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":60416,"Id":"isoTransportProtocolConnectionManagementAbort","Description":"ISO Transport Protocol, Connection Management - Abort","Type":"Single","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"groupFunctionCode","Name":"Group Function Code","Description":"Abort","BitLength":8,"BitOffset":0,"BitStart":0,"Match":255,"Signed":false},{"Order":2,"Id":"reason","Name":"Reason","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":3,"Id":"reserved","Name":"Reserved","BitLength":16,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":4,"Id":"pgn","Name":"PGN","Description":"PGN","BitLength":24,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":60928,"Id":"isoAddressClaim","Description":"ISO Address Claim","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"uniqueNumber","Name":"Unique Number","Description":"ISO Identity Number","BitLength":21,"BitOffset":0,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":2,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":21,"BitStart":5,"Type":"Manufacturer code","Signed":false},{"Order":3,"Id":"deviceInstanceLower","Name":"Device Instance Lower","Description":"ISO ECU Instance","BitLength":3,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":4,"Id":"deviceInstanceUpper","Name":"Device Instance Upper","Description":"ISO Function Instance","BitLength":5,"BitOffset":35,"BitStart":3,"Signed":false},{"Order":5,"Id":"deviceFunction","Name":"Device Function","Description":"ISO Function","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":1,"BitOffset":48,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":7,"Id":"deviceClass","Name":"Device Class","BitLength":7,"BitOffset":49,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Reserved for 2000 Use","value":"0"},{"name":"System tools","value":"10"},{"name":"Safety systems","value":"20"},{"name":"Internetwork device","value":"25"},{"name":"Electrical Distribution","value":"30"},{"name":"Electrical Generation","value":"35"},{"name":"Steering and Control surfaces","value":"40"},{"name":"Propulsion","value":"50"},{"name":"Navigation","value":"60"},{"name":"Communication","value":"70"},{"name":"Sensor Communication Interface","value":"75"},{"name":"Instrumentation/general systems","value":"80"},{"name":"External Environment","value":"85"},{"name":"Internal Environment","value":"90"},{"name":"Deck + cargo + fishing equipment systems","value":"100"},{"name":"Display","value":"120"},{"name":"Entertainment","value":"125"}]},{"Order":8,"Id":"systemInstance","Name":"System Instance","Description":"ISO Device Class Instance","BitLength":4,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":9,"Id":"industryGroup","Name":"Industry Group","BitLength":3,"BitOffset":60,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":10,"Id":"reserved","Name":"Reserved","Description":"ISO Self Configurable","BitLength":1,"BitOffset":63,"BitStart":7,"Type":"Binary data","Signed":false}]},{"PGN":61184,"Id":"seatalkWirelessKeypadLightControl","Description":"Seatalk: Wireless Keypad Light Control","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Wireless Keypad Light Control","BitLength":8,"BitOffset":16,"BitStart":0,"Match":1,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"variant","Name":"Variant","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"wirelessSetting","Name":"Wireless Setting","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"wiredSetting","Name":"Wired Setting","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false}]},{"PGN":61184,"Id":"seatalkWirelessKeypadLightControl","Description":"Seatalk: Wireless Keypad Light Control","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"pid","Name":"PID","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"variant","Name":"Variant","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"beepControl","Name":"Beep Control","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false}]},{"PGN":61184,"Id":"victronBatteryRegister","Description":"Victron Battery Register","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Victron","BitLength":11,"BitOffset":0,"BitStart":0,"Match":358,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"registerId","Name":"Register Id","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"payload","Name":"Payload","BitLength":32,"BitOffset":32,"BitStart":0,"Signed":false}]},{"PGN":61184,"Id":"manufacturerProprietarySingleFrameAddressed","Description":"Manufacturer Proprietary single-frame addressed","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":0,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":13,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":4,"Id":"data","Name":"Data","BitLength":48,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":61440,"Id":"unknownSingleFrameNonAddressed","Description":"Unknown single-frame non-addressed","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":0,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":13,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":4,"Id":"data","Name":"Data","BitLength":48,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":65001,"Id":"bus1PhaseCBasicAcQuantities","Description":"Bus #1 Phase C Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false}]},{"PGN":65002,"Id":"bus1PhaseBBasicAcQuantities","Description":"Bus #1 Phase B Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false}]},{"PGN":65003,"Id":"bus1PhaseABasicAcQuantities","Description":"Bus #1 Phase A Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false}]},{"PGN":65004,"Id":"bus1AverageBasicAcQuantities","Description":"Bus #1 Average Basic AC Quantities","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false}]},{"PGN":65005,"Id":"utilityTotalAcEnergy","Description":"Utility Total AC Energy","Type":"Single","Complete":false,"Missing":["Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"totalEnergyExport","Name":"Total Energy Export","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"kWh","Signed":false},{"Order":2,"Id":"totalEnergyImport","Name":"Total Energy Import","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"kWh","Signed":false}]},{"PGN":65006,"Id":"utilityPhaseCAcReactivePower","Description":"Utility Phase C AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"var","Signed":false},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65007,"Id":"utilityPhaseCAcPower","Description":"Utility Phase C AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"W","Signed":true,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"VA","Signed":true,"Offset":-2000000000}]},{"PGN":65008,"Id":"utilityPhaseCBasicAcQuantities","Description":"Utility Phase C Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65009,"Id":"utilityPhaseBAcReactivePower","Description":"Utility Phase B AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"var","Signed":false},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65010,"Id":"utilityPhaseBAcPower","Description":"Utility Phase B AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"W","Signed":true,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"VA","Signed":true,"Offset":-2000000000}]},{"PGN":65011,"Id":"utilityPhaseBBasicAcQuantities","Description":"Utility Phase B Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65012,"Id":"utilityPhaseAAcReactivePower","Description":"Utility Phase A AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"var","Signed":true,"Offset":-2000000000},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":32,"BitStart":0,"Resolution":0,"Signed":true},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65013,"Id":"utilityPhaseAAcPower","Description":"Utility Phase A AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"W","Signed":true,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"VA","Signed":true,"Offset":-2000000000}]},{"PGN":65014,"Id":"utilityPhaseABasicAcQuantities","Description":"Utility Phase A Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65015,"Id":"utilityTotalAcReactivePower","Description":"Utility Total AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"var","Signed":true,"Offset":-2000000000},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":32,"BitStart":0,"Resolution":0,"Signed":false},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65016,"Id":"utilityTotalAcPower","Description":"Utility Total AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"W","Signed":true,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"VA","Signed":true,"Offset":-2000000000}]},{"PGN":65017,"Id":"utilityAverageBasicAcQuantities","Description":"Utility Average Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65018,"Id":"generatorTotalAcEnergy","Description":"Generator Total AC Energy","Type":"Single","Complete":false,"Missing":["Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"totalEnergyExport","Name":"Total Energy Export","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"kWh","Signed":false},{"Order":2,"Id":"totalEnergyImport","Name":"Total Energy Import","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"kWh","Signed":false}]},{"PGN":65019,"Id":"generatorPhaseCAcReactivePower","Description":"Generator Phase C AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"var","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65020,"Id":"generatorPhaseCAcPower","Description":"Generator Phase C AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"W","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"VA","Signed":false,"Offset":-2000000000}]},{"PGN":65021,"Id":"generatorPhaseCBasicAcQuantities","Description":"Generator Phase C Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65022,"Id":"generatorPhaseBAcReactivePower","Description":"Generator Phase B AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"var","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65023,"Id":"generatorPhaseBAcPower","Description":"Generator Phase B AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"W","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"VA","Signed":false,"Offset":-2000000000}]},{"PGN":65024,"Id":"generatorPhaseBBasicAcQuantities","Description":"Generator Phase B Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65025,"Id":"generatorPhaseAAcReactivePower","Description":"Generator Phase A AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"var","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65026,"Id":"generatorPhaseAAcPower","Description":"Generator Phase A AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"W","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"VA","Signed":false,"Offset":-2000000000}]},{"PGN":65027,"Id":"generatorPhaseABasicAcQuantities","Description":"Generator Phase A Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65028,"Id":"generatorTotalAcReactivePower","Description":"Generator Total AC Reactive Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"reactivePower","Name":"Reactive Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"var","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"powerFactor","Name":"Power Factor","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":3,"Id":"powerFactorLagging","Name":"Power Factor Lagging","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Leading","value":"0"},{"name":"Lagging","value":"1"},{"name":"Error","value":"2"}]}]},{"PGN":65029,"Id":"generatorTotalAcPower","Description":"Generator Total AC Power","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"realPower","Name":"Real Power","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"W","Signed":false,"Offset":-2000000000},{"Order":2,"Id":"apparentPower","Name":"Apparent Power","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"VA","Signed":false,"Offset":-2000000000}]},{"PGN":65030,"Id":"generatorAverageBasicAcQuantities","Description":"Generator Average Basic AC Quantities","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"lineLineAcRmsVoltage","Name":"Line-Line AC RMS Voltage","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"V","Signed":false},{"Order":2,"Id":"lineNeutralAcRmsVoltage","Name":"Line-Neutral AC RMS Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Signed":false},{"Order":3,"Id":"acFrequency","Name":"AC Frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.0078125","Signed":false},{"Order":4,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"A","Signed":false}]},{"PGN":65240,"Id":"isoCommandedAddress","Description":"ISO Commanded Address","Type":"ISO","Complete":true,"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"uniqueNumber","Name":"Unique Number","Description":"ISO Identity Number","BitLength":21,"BitOffset":0,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":2,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":21,"BitStart":5,"Signed":false},{"Order":3,"Id":"deviceInstanceLower","Name":"Device Instance Lower","Description":"ISO ECU Instance","BitLength":3,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":4,"Id":"deviceInstanceUpper","Name":"Device Instance Upper","Description":"ISO Function Instance","BitLength":5,"BitOffset":35,"BitStart":3,"Signed":false},{"Order":5,"Id":"deviceFunction","Name":"Device Function","Description":"ISO Function","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":1,"BitOffset":48,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":7,"Id":"deviceClass","Name":"Device Class","BitLength":7,"BitOffset":49,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Reserved for 2000 Use","value":"0"},{"name":"System tools","value":"10"},{"name":"Safety systems","value":"20"},{"name":"Internetwork device","value":"25"},{"name":"Electrical Distribution","value":"30"},{"name":"Electrical Generation","value":"35"},{"name":"Steering and Control surfaces","value":"40"},{"name":"Propulsion","value":"50"},{"name":"Navigation","value":"60"},{"name":"Communication","value":"70"},{"name":"Sensor Communication Interface","value":"75"},{"name":"Instrumentation/general systems","value":"80"},{"name":"External Environment","value":"85"},{"name":"Internal Environment","value":"90"},{"name":"Deck + cargo + fishing equipment systems","value":"100"},{"name":"Display","value":"120"},{"name":"Entertainment","value":"125"}]},{"Order":8,"Id":"systemInstance","Name":"System Instance","Description":"ISO Device Class Instance","BitLength":4,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":9,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":60,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":10,"Id":"reserved","Name":"Reserved","Description":"ISO Self Configurable","BitLength":1,"BitOffset":63,"BitStart":7,"Type":"Binary data","Signed":false},{"Order":11,"Id":"newSourceAddress","Name":"New Source Address","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false}]},{"PGN":65280,"Id":"manufacturerProprietarySingleFrameNonAddressed","Description":"Manufacturer Proprietary single-frame non-addressed","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":0,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":13,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":4,"Id":"data","Name":"Data","BitLength":48,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":65284,"Id":"maretronProprietaryDcBreakerCurrent","Description":"Maretron: Proprietary DC Breaker Current","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Maretron","BitLength":11,"BitOffset":0,"BitStart":0,"Match":137,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"bankInstance","Name":"Bank Instance","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"indicatorNumber","Name":"Indicator Number","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"breakerCurrent","Name":"Breaker Current","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":true},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":16,"BitOffset":48,"BitStart":0,"Signed":false}]},{"PGN":65285,"Id":"airmarBootStateAcknowledgment","Description":"Airmar: Boot State Acknowledgment","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"bootState","Name":"Boot State","BitLength":4,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"in Startup Monitor","value":"0"},{"name":"running Bootloader","value":"1"},{"name":"running Application","value":"2"}]}]},{"PGN":65285,"Id":"lowranceTemperature","Description":"Lowrance: Temperature","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Lowrance","BitLength":11,"BitOffset":0,"BitStart":0,"Match":140,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"temperatureSource","Name":"Temperature Source","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Sea Temperature","value":"0"},{"name":"Outside Temperature","value":"1"},{"name":"Inside Temperature","value":"2"},{"name":"Engine Room Temperature","value":"3"},{"name":"Main Cabin Temperature","value":"4"},{"name":"Live Well Temperature","value":"5"},{"name":"Bait Well Temperature","value":"6"},{"name":"Refridgeration Temperature","value":"7"},{"name":"Heating System Temperature","value":"8"},{"name":"Dew Point Temperature","value":"9"},{"name":"Apparent Wind Chill Temperature","value":"10"},{"name":"Theoretical Wind Chill Temperature","value":"11"},{"name":"Heat Index Temperature","value":"12"},{"name":"Freezer Temperature","value":"13"},{"name":"Exhaust Gas Temperature","value":"14"}]},{"Order":5,"Id":"actualTemperature","Name":"Actual Temperature","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false}]},{"PGN":65286,"Id":"chetcoDimmer","Description":"Chetco: Dimmer","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision","Lookups"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Chetco","BitLength":11,"BitOffset":0,"BitStart":0,"Match":409,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":13,"BitStart":5,"Signed":false},{"Order":4,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"dimmer1","Name":"Dimmer1","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"dimmer2","Name":"Dimmer2","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"dimmer3","Name":"Dimmer3","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"dimmer4","Name":"Dimmer4","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"control","Name":"Control","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false}]},{"PGN":65286,"Id":"airmarBootStateRequest","Description":"Airmar: Boot State Request","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65287,"Id":"airmarAccessLevel","Description":"Airmar: Access Level","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"formatCode","Name":"Format Code","BitLength":3,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Format code 1","value":"1"}]},{"Order":5,"Id":"accessLevel","Name":"Access Level","BitLength":3,"BitOffset":19,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Locked","value":"0"},{"name":"unlocked level 1","value":"1"},{"name":"unlocked level 2","value":"2"}]},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":7,"Id":"accessSeedKey","Name":"Access Seed/Key","Description":"When transmitted, it provides a seed for an unlock operation. It is used to provide the key during PGN 126208.","BitLength":32,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":65287,"Id":"simnetConfigureTemperatureSensor","Description":"Simnet: Configure Temperature Sensor","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65288,"Id":"seatalkAlarm","Description":"Seatalk: Alarm","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"alarmStatus","Name":"Alarm Status","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Alarm condition not met","value":"0"},{"name":"Alarm condition met and not silenced","value":"1"},{"name":"Alarm condition met and silenced","value":"2"}]},{"Order":6,"Id":"alarmId","Name":"Alarm ID","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No Alarm","value":"0"},{"name":"Shallow Depth","value":"1"},{"name":"Deep Depth","value":"2"},{"name":"Shallow Anchor","value":"3"},{"name":"Deep Anchor","value":"4"},{"name":"Off Course","value":"5"},{"name":"AWA High","value":"6"},{"name":"AWA Low","value":"7"},{"name":"AWS High","value":"8"},{"name":"AWS Low","value":"9"},{"name":"TWA High","value":"10"},{"name":"TWA Low","value":"11"},{"name":"TWS High","value":"12"},{"name":"TWS Low","value":"13"},{"name":"WP Arrival","value":"14"},{"name":"Boat Speed High","value":"15"},{"name":"Boat Speed Low","value":"16"},{"name":"Sea Temp High","value":"17"},{"name":"Sea Temp Low","value":"18"},{"name":"Pilot Watch","value":"19"},{"name":"Pilot Off Course","value":"20"},{"name":"Pilot Wind Shift","value":"21"},{"name":"Pilot Low Battery","value":"22"},{"name":"Pilot Last Minute Of Watch","value":"23"},{"name":"Pilot No NMEA Data","value":"24"},{"name":"Pilot Large XTE","value":"25"},{"name":"Pilot NMEA DataError","value":"26"},{"name":"Pilot CU Disconnected","value":"27"},{"name":"Pilot Auto Release","value":"28"},{"name":"Pilot Way Point Advance","value":"29"},{"name":"Pilot Drive Stopped","value":"30"},{"name":"Pilot Type Unspecified","value":"31"},{"name":"Pilot Calibration Required","value":"32"},{"name":"Pilot Last Heading","value":"33"},{"name":"Pilot No Pilot","value":"34"},{"name":"Pilot Route Complete","value":"35"},{"name":"Pilot Variable Text","value":"36"},{"name":"GPS Failure","value":"37"},{"name":"MOB","value":"38"},{"name":"Seatalk1 Anchor","value":"39"},{"name":"Pilot Swapped Motor Power","value":"40"},{"name":"Pilot Standby Too Fast To Fish","value":"41"},{"name":"Pilot No GPS Fix","value":"42"},{"name":"Pilot No GPS COG","value":"43"},{"name":"Pilot Start Up","value":"44"},{"name":"Pilot Too Slow","value":"45"},{"name":"Pilot No Compass","value":"46"},{"name":"Pilot Rate Gyro Fault","value":"47"},{"name":"Pilot Current Limit","value":"48"},{"name":"Pilot Way Point Advance Port","value":"49"},{"name":"Pilot Way Point Advance Stbd","value":"50"},{"name":"Pilot No Wind Data","value":"51"},{"name":"Pilot No Speed Data","value":"52"},{"name":"Pilot Seatalk Fail1","value":"53"},{"name":"Pilot Seatalk Fail2","value":"54"},{"name":"Pilot Warning Too Fast To Fish","value":"55"},{"name":"Pilot Auto Dockside Fail","value":"56"},{"name":"Pilot Turn Too Fast","value":"57"},{"name":"Pilot No Nav Data","value":"58"},{"name":"Pilot Lost Waypoint Data","value":"59"},{"name":"Pilot EEPROM Corrupt","value":"60"},{"name":"Pilot Rudder Feedback Fail","value":"61"},{"name":"Pilot Autolearn Fail1","value":"62"},{"name":"Pilot Autolearn Fail2","value":"63"},{"name":"Pilot Autolearn Fail3","value":"64"},{"name":"Pilot Autolearn Fail4","value":"65"},{"name":"Pilot Autolearn Fail5","value":"66"},{"name":"Pilot Autolearn Fail6","value":"67"},{"name":"Pilot Warning Cal Required","value":"68"},{"name":"Pilot Warning OffCourse","value":"69"},{"name":"Pilot Warning XTE","value":"70"},{"name":"Pilot Warning Wind Shift","value":"71"},{"name":"Pilot Warning Drive Short","value":"72"},{"name":"Pilot Warning Clutch Short","value":"73"},{"name":"Pilot Warning Solenoid Short","value":"74"},{"name":"Pilot Joystick Fault","value":"75"},{"name":"Pilot No Joystick Data","value":"76"},{"name":"not assigned","value":"77"},{"name":"not assigned","value":"78"},{"name":"not assigned","value":"79"},{"name":"Pilot Invalid Command","value":"80"},{"name":"AIS TX Malfunction","value":"81"},{"name":"AIS Antenna VSWR fault","value":"82"},{"name":"AIS Rx channel 1 malfunction","value":"83"},{"name":"AIS Rx channel 2 malfunction","value":"84"},{"name":"AIS No sensor position in use","value":"85"},{"name":"AIS No valid SOG information","value":"86"},{"name":"AIS No valid COG information","value":"87"},{"name":"AIS 12V alarm","value":"88"},{"name":"AIS 6V alarm","value":"89"},{"name":"AIS Noise threshold exceeded channel A","value":"90"},{"name":"AIS Noise threshold exceeded channel B","value":"91"},{"name":"AIS Transmitter PA fault","value":"92"},{"name":"AIS 3V3 alarm","value":"93"},{"name":"AIS Rx channel 70 malfunction","value":"94"},{"name":"AIS Heading lost/invalid","value":"95"},{"name":"AIS internal GPS lost","value":"96"},{"name":"AIS No sensor position","value":"97"},{"name":"AIS Lock failure","value":"98"},{"name":"AIS Internal GGA timeout","value":"99"},{"name":"AIS Protocol stack restart","value":"100"},{"name":"Pilot No IPS communications","value":"101"},{"name":"Pilot Power-On or Sleep-Switch Reset While Engaged ","value":"102"},{"name":"Pilot Unexpected Reset While Engaged","value":"103"},{"name":"AIS Dangerous Target","value":"104"},{"name":"AIS Lost Target","value":"105"},{"name":"AIS Safety Related Message (used to silence)","value":"106"},{"name":"AIS Connection Lost","value":"107"},{"name":"No Fix","value":"108"}]},{"Order":7,"Id":"alarmGroup","Name":"Alarm Group","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Instrument","value":"0"},{"name":"Autopilot","value":"1"},{"name":"Radar","value":"2"},{"name":"Chart Plotter","value":"3"},{"name":"AIS","value":"4"}]},{"Order":8,"Id":"alarmPriority","Name":"Alarm Priority","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":65289,"Id":"simnetTrimTabSensorCalibration","Description":"Simnet: Trim Tab Sensor Calibration","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65290,"Id":"simnetPaddleWheelSpeedConfiguration","Description":"Simnet: Paddle Wheel Speed Configuration","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65292,"Id":"simnetClearFluidLevelWarnings","Description":"Simnet: Clear Fluid Level Warnings","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65293,"Id":"simnetLgc2000Configuration","Description":"Simnet: LGC-2000 Configuration","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65309,"Id":"navicoWirelessBatteryStatus","Description":"Navico: Wireless Battery Status","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"status","Name":"Status","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"batteryStatus","Name":"Battery Status","BitLength":8,"BitOffset":24,"BitStart":0,"Units":"%","Signed":false},{"Order":6,"Id":"batteryChargeStatus","Name":"Battery Charge Status","BitLength":8,"BitOffset":32,"BitStart":0,"Units":"%","Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":24,"BitOffset":40,"BitStart":0,"Signed":false}]},{"PGN":65312,"Id":"navicoWirelessSignalStatus","Description":"Navico: Wireless Signal Status","Type":"Single","Complete":false,"Missing":["Fields"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"unknown","Name":"Unknown","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"signalStrength","Name":"Signal Strength","BitLength":8,"BitOffset":24,"BitStart":0,"Units":"%","Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":24,"BitOffset":32,"BitStart":0,"Signed":false}]},{"PGN":65325,"Id":"simnetReprogramStatus","Description":"Simnet: Reprogram Status","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65341,"Id":"simnetAutopilotMode","Description":"Simnet: Autopilot Mode","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65345,"Id":"seatalkPilotWindDatum","Description":"Seatalk: Pilot Wind Datum","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"windDatum","Name":"Wind Datum","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"rollingAverageWindAngle","Name":"Rolling Average Wind Angle","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":16,"BitOffset":48,"BitStart":0,"Signed":false}]},{"PGN":65359,"Id":"seatalkPilotHeading","Description":"Seatalk: Pilot Heading","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"headingTrue","Name":"Heading True","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":6,"Id":"headingMagnetic","Name":"Heading Magnetic","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false}]},{"PGN":65360,"Id":"seatalkPilotLockedHeading","Description":"Seatalk: Pilot Locked Heading","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"targetHeadingTrue","Name":"Target Heading True","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":6,"Id":"targetHeadingMagnetic","Name":"Target Heading Magnetic","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":65361,"Id":"seatalkSilenceAlarm","Description":"Seatalk: Silence Alarm","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"alarmId","Name":"Alarm ID","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No Alarm","value":"0"},{"name":"Shallow Depth","value":"1"},{"name":"Deep Depth","value":"2"},{"name":"Shallow Anchor","value":"3"},{"name":"Deep Anchor","value":"4"},{"name":"Off Course","value":"5"},{"name":"AWA High","value":"6"},{"name":"AWA Low","value":"7"},{"name":"AWS High","value":"8"},{"name":"AWS Low","value":"9"},{"name":"TWA High","value":"10"},{"name":"TWA Low","value":"11"},{"name":"TWS High","value":"12"},{"name":"TWS Low","value":"13"},{"name":"WP Arrival","value":"14"},{"name":"Boat Speed High","value":"15"},{"name":"Boat Speed Low","value":"16"},{"name":"Sea Temp High","value":"17"},{"name":"Sea Temp Low","value":"18"},{"name":"Pilot Watch","value":"19"},{"name":"Pilot Off Course","value":"20"},{"name":"Pilot Wind Shift","value":"21"},{"name":"Pilot Low Battery","value":"22"},{"name":"Pilot Last Minute Of Watch","value":"23"},{"name":"Pilot No NMEA Data","value":"24"},{"name":"Pilot Large XTE","value":"25"},{"name":"Pilot NMEA DataError","value":"26"},{"name":"Pilot CU Disconnected","value":"27"},{"name":"Pilot Auto Release","value":"28"},{"name":"Pilot Way Point Advance","value":"29"},{"name":"Pilot Drive Stopped","value":"30"},{"name":"Pilot Type Unspecified","value":"31"},{"name":"Pilot Calibration Required","value":"32"},{"name":"Pilot Last Heading","value":"33"},{"name":"Pilot No Pilot","value":"34"},{"name":"Pilot Route Complete","value":"35"},{"name":"Pilot Variable Text","value":"36"},{"name":"GPS Failure","value":"37"},{"name":"MOB","value":"38"},{"name":"Seatalk1 Anchor","value":"39"},{"name":"Pilot Swapped Motor Power","value":"40"},{"name":"Pilot Standby Too Fast To Fish","value":"41"},{"name":"Pilot No GPS Fix","value":"42"},{"name":"Pilot No GPS COG","value":"43"},{"name":"Pilot Start Up","value":"44"},{"name":"Pilot Too Slow","value":"45"},{"name":"Pilot No Compass","value":"46"},{"name":"Pilot Rate Gyro Fault","value":"47"},{"name":"Pilot Current Limit","value":"48"},{"name":"Pilot Way Point Advance Port","value":"49"},{"name":"Pilot Way Point Advance Stbd","value":"50"},{"name":"Pilot No Wind Data","value":"51"},{"name":"Pilot No Speed Data","value":"52"},{"name":"Pilot Seatalk Fail1","value":"53"},{"name":"Pilot Seatalk Fail2","value":"54"},{"name":"Pilot Warning Too Fast To Fish","value":"55"},{"name":"Pilot Auto Dockside Fail","value":"56"},{"name":"Pilot Turn Too Fast","value":"57"},{"name":"Pilot No Nav Data","value":"58"},{"name":"Pilot Lost Waypoint Data","value":"59"},{"name":"Pilot EEPROM Corrupt","value":"60"},{"name":"Pilot Rudder Feedback Fail","value":"61"},{"name":"Pilot Autolearn Fail1","value":"62"},{"name":"Pilot Autolearn Fail2","value":"63"},{"name":"Pilot Autolearn Fail3","value":"64"},{"name":"Pilot Autolearn Fail4","value":"65"},{"name":"Pilot Autolearn Fail5","value":"66"},{"name":"Pilot Autolearn Fail6","value":"67"},{"name":"Pilot Warning Cal Required","value":"68"},{"name":"Pilot Warning OffCourse","value":"69"},{"name":"Pilot Warning XTE","value":"70"},{"name":"Pilot Warning Wind Shift","value":"71"},{"name":"Pilot Warning Drive Short","value":"72"},{"name":"Pilot Warning Clutch Short","value":"73"},{"name":"Pilot Warning Solenoid Short","value":"74"},{"name":"Pilot Joystick Fault","value":"75"},{"name":"Pilot No Joystick Data","value":"76"},{"name":"not assigned","value":"77"},{"name":"not assigned","value":"78"},{"name":"not assigned","value":"79"},{"name":"Pilot Invalid Command","value":"80"},{"name":"AIS TX Malfunction","value":"81"},{"name":"AIS Antenna VSWR fault","value":"82"},{"name":"AIS Rx channel 1 malfunction","value":"83"},{"name":"AIS Rx channel 2 malfunction","value":"84"},{"name":"AIS No sensor position in use","value":"85"},{"name":"AIS No valid SOG information","value":"86"},{"name":"AIS No valid COG information","value":"87"},{"name":"AIS 12V alarm","value":"88"},{"name":"AIS 6V alarm","value":"89"},{"name":"AIS Noise threshold exceeded channel A","value":"90"},{"name":"AIS Noise threshold exceeded channel B","value":"91"},{"name":"AIS Transmitter PA fault","value":"92"},{"name":"AIS 3V3 alarm","value":"93"},{"name":"AIS Rx channel 70 malfunction","value":"94"},{"name":"AIS Heading lost/invalid","value":"95"},{"name":"AIS internal GPS lost","value":"96"},{"name":"AIS No sensor position","value":"97"},{"name":"AIS Lock failure","value":"98"},{"name":"AIS Internal GGA timeout","value":"99"},{"name":"AIS Protocol stack restart","value":"100"},{"name":"Pilot No IPS communications","value":"101"},{"name":"Pilot Power-On or Sleep-Switch Reset While Engaged ","value":"102"},{"name":"Pilot Unexpected Reset While Engaged","value":"103"},{"name":"AIS Dangerous Target","value":"104"},{"name":"AIS Lost Target","value":"105"},{"name":"AIS Safety Related Message (used to silence)","value":"106"},{"name":"AIS Connection Lost","value":"107"},{"name":"No Fix","value":"108"}]},{"Order":5,"Id":"alarmGroup","Name":"Alarm Group","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Instrument","value":"0"},{"name":"Autopilot","value":"1"},{"name":"Radar","value":"2"},{"name":"Chart Plotter","value":"3"},{"name":"AIS","value":"4"}]},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":32,"BitOffset":32,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":65371,"Id":"seatalkKeypadMessage","Description":"Seatalk: Keypad Message","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"firstKey","Name":"First key","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"secondKey","Name":"Second key","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"firstKeyState","Name":"First key state","BitLength":2,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"secondKeyState","Name":"Second key state","BitLength":2,"BitOffset":42,"BitStart":2,"Signed":false},{"Order":9,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":44,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":10,"Id":"encoderPosition","Name":"Encoder Position","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false}]},{"PGN":65374,"Id":"seatalkKeypadHeartbeat","Description":"SeaTalk: Keypad Heartbeat","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"variant","Name":"Variant","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"status","Name":"Status","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false}]},{"PGN":65379,"Id":"seatalkPilotMode","Description":"Seatalk: Pilot Mode","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"pilotMode","Name":"Pilot Mode","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"subMode","Name":"Sub Mode","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":6,"Id":"pilotModeData","Name":"Pilot Mode Data","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":24,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":65408,"Id":"airmarDepthQualityFactor","Description":"Airmar: Depth Quality Factor","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"depthQualityFactor","Name":"Depth Quality Factor","BitLength":4,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No Depth Lock","value":"0"}]}]},{"PGN":65409,"Id":"airmarSpeedPulseCount","Description":"Airmar: Speed Pulse Count","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"durationOfInterval","Name":"Duration of interval","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false},{"Order":6,"Id":"numberOfPulsesReceived","Name":"Number of pulses received","BitLength":16,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Resolution":0,"Signed":false}]},{"PGN":65410,"Id":"airmarDeviceInformation","Description":"Airmar: Device Information","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"internalDeviceTemperature","Name":"Internal Device Temperature","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":6,"Id":"supplyVoltage","Name":"Supply Voltage","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"V","Resolution":"0.01","Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":65480,"Id":"simnetAutopilotMode","Description":"Simnet: Autopilot Mode","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":65536,"Id":"unknownFastPacketAddressed","Description":"Unknown fast-packet addressed","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","Lookups"],"Length":255,"RepeatingFields":0,"Fields":{"Field":{"Order":1,"Id":"data","Name":"Data","BitLength":2040,"BitOffset":0,"BitStart":0,"Type":"Binary data","Signed":false}}},{"PGN":126208,"Id":"nmeaRequestGroupFunction","Description":"NMEA - Request group function","Type":"Fast","Complete":true,"Length":12,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Request","BitLength":8,"BitOffset":0,"BitStart":0,"Match":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"pgn","Name":"PGN","Description":"Requested PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"transmissionInterval","Name":"Transmission interval","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false},{"Order":4,"Id":"transmissionIntervalOffset","Name":"Transmission interval offset","BitLength":16,"BitOffset":64,"BitStart":0,"Units":"s","Resolution":"0.01","Signed":false},{"Order":5,"Id":"OfParameters","Name":"# of Parameters","Description":"How many parameter pairs will follow","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":6,"Id":"parameter","Name":"Parameter","Description":"Parameter index","BitLength":8,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"value","Name":"Value","Description":"Parameter value, variable length","BitLength":0,"BitOffset":96,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126208,"Id":"nmeaCommandGroupFunction","Description":"NMEA - Command group function","Type":"Fast","Complete":true,"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Command","BitLength":8,"BitOffset":0,"BitStart":0,"Match":1,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"pgn","Name":"PGN","Description":"Commanded PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"priority","Name":"Priority","BitLength":4,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":36,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":5,"Id":"OfParameters","Name":"# of Parameters","Description":"How many parameter pairs will follow","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"parameter","Name":"Parameter","Description":"Parameter index","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"value","Name":"Value","Description":"Parameter value, variable length","BitLength":0,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126208,"Id":"nmeaAcknowledgeGroupFunction","Description":"NMEA - Acknowledge group function","Type":"Fast","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Acknowledge","BitLength":8,"BitOffset":0,"BitStart":0,"Match":2,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"pgn","Name":"PGN","Description":"Commanded PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"pgnErrorCode","Name":"PGN error code","BitLength":4,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Acknowledge","value":"0"},{"name":"PGN not supported","value":"1"},{"name":"PGN not available","value":"2"},{"name":"Access denied","value":"3"},{"name":"Not supported","value":"4"},{"name":"Tag not supported","value":"5"},{"name":"Read or Write not supported","value":"6"}]},{"Order":4,"Id":"transmissionIntervalPriorityErrorCode","Name":"Transmission interval/Priority error code","BitLength":4,"BitOffset":36,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Acknowledge","value":"0"},{"name":"Transmit Interval/Priority not supported","value":"1"},{"name":"Transmit Interval to low","value":"2"},{"name":"Access denied","value":"3"},{"name":"Not supported","value":"4"}]},{"Order":5,"Id":"OfParameters","Name":"# of Parameters","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"parameter","Name":"Parameter","BitLength":4,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Acknowledge","value":"0"},{"name":"Invalid parameter field","value":"1"},{"name":"Temporary error","value":"2"},{"name":"Parameter out of range","value":"3"},{"name":"Access denied","value":"4"},{"name":"Not supported","value":"5"},{"name":"Read or Write not supported","value":"6"}]}]},{"PGN":126208,"Id":"nmeaReadFieldsGroupFunction","Description":"NMEA - Read Fields group function","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFieldSet1":2,"RepeatingFieldSet2":1,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Read Fields","BitLength":8,"BitOffset":0,"BitStart":0,"Match":3,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"pgn","Name":"PGN","Description":"Commanded PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":32,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":43,"BitStart":3,"Resolution":0,"Signed":false},{"Order":5,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":6,"Id":"uniqueId","Name":"Unique ID","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"OfSelectionPairs","Name":"# of Selection Pairs","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":8,"Id":"OfParameters","Name":"# of Parameters","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":9,"Id":"selectionParameter","Name":"Selection Parameter","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"selectionValue","Name":"Selection Value","BitLength":0,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"parameter","Name":"Parameter","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126208,"Id":"nmeaReadFieldsReplyGroupFunction","Description":"NMEA - Read Fields reply group function","Type":"Fast","Complete":true,"Length":8,"RepeatingFieldSet1":2,"RepeatingFieldSet2":2,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Read Fields Reply","BitLength":8,"BitOffset":0,"BitStart":0,"Match":4,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"pgn","Name":"PGN","Description":"Commanded PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Only for proprietary PGNs","BitLength":11,"BitOffset":32,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"Only for proprietary PGNs","BitLength":2,"BitOffset":43,"BitStart":3,"Resolution":0,"Signed":false},{"Order":5,"Id":"industryCode","Name":"Industry Code","Description":"Only for proprietary PGNs","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":6,"Id":"uniqueId","Name":"Unique ID","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"OfSelectionPairs","Name":"# of Selection Pairs","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":8,"Id":"OfParameters","Name":"# of Parameters","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":9,"Id":"selectionParameter","Name":"Selection Parameter","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"selectionValue","Name":"Selection Value","BitLength":0,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"parameter","Name":"Parameter","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"value","Name":"Value","BitLength":0,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126208,"Id":"nmeaWriteFieldsGroupFunction","Description":"NMEA - Write Fields group function","Type":"Fast","Complete":true,"Length":8,"RepeatingFieldSet1":2,"RepeatingFieldSet2":2,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Write Fields","BitLength":8,"BitOffset":0,"BitStart":0,"Match":5,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"pgn","Name":"PGN","Description":"Commanded PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Only for proprietary PGNs","BitLength":11,"BitOffset":32,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"Only for proprietary PGNs","BitLength":2,"BitOffset":43,"BitStart":3,"Resolution":0,"Signed":false},{"Order":5,"Id":"industryCode","Name":"Industry Code","Description":"Only for proprietary PGNs","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":6,"Id":"uniqueId","Name":"Unique ID","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"OfSelectionPairs","Name":"# of Selection Pairs","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":8,"Id":"OfParameters","Name":"# of Parameters","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":9,"Id":"selectionParameter","Name":"Selection Parameter","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"selectionValue","Name":"Selection Value","BitLength":0,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"parameter","Name":"Parameter","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"value","Name":"Value","BitLength":0,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126208,"Id":"nmeaWriteFieldsReplyGroupFunction","Description":"NMEA - Write Fields reply group function","Type":"Fast","Complete":true,"Length":8,"RepeatingFieldSet1":2,"RepeatingFieldSet2":2,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Write Fields Reply","BitLength":8,"BitOffset":0,"BitStart":0,"Match":6,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"pgn","Name":"PGN","Description":"Commanded PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Only for proprietary PGNs","BitLength":11,"BitOffset":32,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"Only for proprietary PGNs","BitLength":2,"BitOffset":43,"BitStart":3,"Resolution":0,"Signed":false},{"Order":5,"Id":"industryCode","Name":"Industry Code","Description":"Only for proprietary PGNs","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":6,"Id":"uniqueId","Name":"Unique ID","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"OfSelectionPairs","Name":"# of Selection Pairs","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":8,"Id":"OfParameters","Name":"# of Parameters","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":9,"Id":"selectionParameter","Name":"Selection Parameter","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"selectionValue","Name":"Selection Value","BitLength":0,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"parameter","Name":"Parameter","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"value","Name":"Value","BitLength":0,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126464,"Id":"pgnListTransmitAndReceive","Description":"PGN List (Transmit and Receive)","Type":"Fast","Complete":true,"Length":8,"RepeatingFields":1,"Fields":[{"Order":1,"Id":"functionCode","Name":"Function Code","Description":"Transmit or receive PGN Group Function Code","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Transmit PGN list","value":"0"},{"name":"Receive PGN list","value":"1"}]},{"Order":2,"Id":"pgn","Name":"PGN","BitLength":24,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126720,"Id":"seatalk1PilotMode","Description":"Seatalk1: Pilot Mode","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":21,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"0x81f0","BitLength":16,"BitOffset":16,"BitStart":0,"Match":33264,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"command","Name":"command","Description":"0x84","BitLength":8,"BitOffset":32,"BitStart":0,"Match":132,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"unknown1","Name":"Unknown 1","BitLength":24,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":7,"Id":"pilotMode","Name":"Pilot Mode","BitLength":8,"BitOffset":64,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"subMode","Name":"Sub Mode","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"pilotModeData","Name":"Pilot Mode Data","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":10,"Id":"unknown2","Name":"Unknown 2","BitLength":80,"BitOffset":88,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":126720,"Id":"fusionMediaControl","Description":"Fusion: Media Control","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Media Control","BitLength":8,"BitOffset":16,"BitStart":0,"Match":3,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"unknown","Name":"Unknown","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"sourceId","Name":"Source ID","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"command","Name":"Command","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Play","value":"1"},{"name":"Pause","value":"2"},{"name":"Next","value":"4"},{"name":"Prev","value":"6"}]}]},{"PGN":126720,"Id":"fusionSiriusControl","Description":"Fusion: Sirius Control","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":7,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Sirius Control","BitLength":8,"BitOffset":16,"BitStart":0,"Match":30,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"unknown","Name":"Unknown","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"sourceId","Name":"Source ID","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"command","Name":"Command","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Next","value":"1"},{"name":"Prev","value":"2"}]}]},{"PGN":126720,"Id":"fusionRequestStatus","Description":"Fusion: Request Status","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":3,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Request Status","BitLength":8,"BitOffset":16,"BitStart":0,"Match":1,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"unknown","Name":"Unknown","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126720,"Id":"fusionSetSource","Description":"Fusion: Set Source","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":3,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Set Source","BitLength":8,"BitOffset":16,"BitStart":0,"Match":2,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"unknown","Name":"Unknown","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"sourceId","Name":"Source ID","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126720,"Id":"fusionMute","Description":"Fusion: Mute","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":3,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Mute","BitLength":8,"BitOffset":16,"BitStart":0,"Match":17,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"command","Name":"Command","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Mute On","value":"1"},{"name":"Mute Off","value":"2"}]}]},{"PGN":126720,"Id":"fusionSetZoneVolume","Description":"Fusion: Set Zone Volume","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Set Zone Volume","BitLength":8,"BitOffset":16,"BitStart":0,"Match":24,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"unknown","Name":"Unknown","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"zone","Name":"Zone","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"volume","Name":"Volume","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126720,"Id":"fusionSetAllVolumes","Description":"Fusion: Set All Volumes","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Set All Volumes","BitLength":8,"BitOffset":16,"BitStart":0,"Match":25,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"unknown","Name":"Unknown","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"zone1","Name":"Zone1","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"zone2","Name":"Zone2","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"zone3","Name":"Zone3","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"zone4","Name":"Zone4","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126720,"Id":"seatalk1Keystroke","Description":"Seatalk1: Keystroke","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":21,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"0x81f0","BitLength":16,"BitOffset":16,"BitStart":0,"Match":33264,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"command","Name":"command","Description":"0x86","BitLength":8,"BitOffset":32,"BitStart":0,"Match":134,"Type":"Binary data","Signed":false},{"Order":6,"Id":"device","Name":"device","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"S100","value":"33"}]},{"Order":7,"Id":"key","Name":"key","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"-1","value":"64005"},{"name":"+1","value":"63495"},{"name":"Standby","value":"64770"},{"name":"Auto","value":"65025"},{"name":"Wind","value":"64515"},{"name":"Track","value":"56355"},{"name":"+10","value":"63240"},{"name":"-10","value":"63750"},{"name":"-1 and -10","value":"56865"},{"name":"+1 and +10","value":"56610"}]},{"Order":8,"Id":"unknownData","Name":"Unknown data","BitLength":112,"BitOffset":64,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":126720,"Id":"seatalk1DeviceIdentification","Description":"Seatalk1: Device Identification","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"0x81f0","BitLength":16,"BitOffset":16,"BitStart":0,"Match":33264,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"command","Name":"command","Description":"0x90","BitLength":8,"BitOffset":32,"BitStart":0,"Match":144,"Type":"Binary data","Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":40,"BitStart":0,"Resolution":0,"Signed":false},{"Order":7,"Id":"device","Name":"device","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"S100","value":"3"},{"name":"Course Computer","value":"5"}]}]},{"PGN":126720,"Id":"airmarAttitudeOffset","Description":"Airmar: Attitude Offset","Type":"Fast","Complete":true,"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Attitude Offsets","BitLength":8,"BitOffset":16,"BitStart":0,"Match":32,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"azimuthOffset","Name":"Azimuth offset","Description":"Positive: sensor rotated to port, negative: sensor rotated to starboard","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":6,"Id":"pitchOffset","Name":"Pitch offset","Description":"Positive: sensor tilted to bow, negative: sensor tilted to stern","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":7,"Id":"rollOffset","Name":"Roll offset","Description":"Positive: sensor tilted to port, negative: sensor tilted to starboard","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true}]},{"PGN":126720,"Id":"airmarCalibrateCompass","Description":"Airmar: Calibrate Compass","Type":"Fast","Complete":false,"Missing":["Fields"],"Length":24,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Calibrate Compass","BitLength":8,"BitOffset":16,"BitStart":0,"Match":33,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"calibrateFunction","Name":"Calibrate Function","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Normal/cancel calibration","value":"0"},{"name":"Enter calibration mode","value":"1"},{"name":"Reset calibration to 0","value":"2"},{"name":"Verify","value":"3"},{"name":"Reset compass to defaults","value":"4"},{"name":"Reset damping to defaults","value":"5"}]},{"Order":6,"Id":"calibrationStatus","Name":"Calibration Status","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Queried","value":"0"},{"name":"Passed","value":"1"},{"name":"Failed - timeout","value":"2"},{"name":"Failed - tilt error","value":"3"},{"name":"Failed - other","value":"4"},{"name":"In progress","value":"5"}]},{"Order":7,"Id":"verifyScore","Name":"Verify Score","Description":"TBD","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"xAxisGainValue","Name":"X-axis gain value","Description":"default 100, range 50 to 500","BitLength":16,"BitOffset":48,"BitStart":0,"Resolution":"0.01","Signed":true},{"Order":9,"Id":"yAxisGainValue","Name":"Y-axis gain value","Description":"default 100, range 50 to 500","BitLength":16,"BitOffset":64,"BitStart":0,"Resolution":"0.01","Signed":true},{"Order":10,"Id":"zAxisGainValue","Name":"Z-axis gain value","Description":"default 100, range 50 to 500","BitLength":16,"BitOffset":80,"BitStart":0,"Resolution":"0.01","Signed":true},{"Order":11,"Id":"xAxisLinearOffset","Name":"X-axis linear offset","Description":"default 0, range -320.00 to 320.00","BitLength":16,"BitOffset":96,"BitStart":0,"Units":"Tesla","Resolution":"0.01","Signed":true},{"Order":12,"Id":"yAxisLinearOffset","Name":"Y-axis linear offset","Description":"default 0, range -320.00 to 320.00","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"Tesla","Resolution":"0.01","Signed":true},{"Order":13,"Id":"zAxisLinearOffset","Name":"Z-axis linear offset","Description":"default 0, range -320.00 to 320.00","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"Tesla","Resolution":"0.01","Signed":true},{"Order":14,"Id":"xAxisAngularOffset","Name":"X-axis angular offset","Description":"default 0, range 0 to 3600","BitLength":16,"BitOffset":144,"BitStart":0,"Units":"deg","Resolution":"0.1","Signed":true},{"Order":15,"Id":"pitchAndRollDamping","Name":"Pitch and Roll damping","Description":"default 30, range 0 to 200","BitLength":16,"BitOffset":160,"BitStart":0,"Units":"s","Resolution":"0.05","Signed":true},{"Order":16,"Id":"compassRateGyroDamping","Name":"Compass/Rate gyro damping","Description":"default -30, range -2400 to 2400, negative indicates rate gyro is to be used in compass calculations","BitLength":16,"BitOffset":176,"BitStart":0,"Units":"s","Resolution":"0.05","Signed":true}]},{"PGN":126720,"Id":"airmarTrueWindOptions","Description":"Airmar: True Wind Options","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"True Wind Options","BitLength":8,"BitOffset":16,"BitStart":0,"Match":34,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"cogSubstitionForHdg","Name":"COG substition for HDG","Description":"Allow use of COG when HDG not available?","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Use HDG only","value":"0"},{"name":"Allow COG to replace HDG","value":"1"}]},{"Order":6,"Id":"calibrationStatus","Name":"Calibration Status","BitLength":8,"BitOffset":26,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Queried","value":"0"},{"name":"Passed","value":"1"},{"name":"Failed - timeout","value":"2"},{"name":"Failed - tilt error","value":"3"},{"name":"Failed - other","value":"4"},{"name":"In progress","value":"5"}]},{"Order":7,"Id":"verifyScore","Name":"Verify Score","Description":"TBD","BitLength":8,"BitOffset":34,"BitStart":2,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"xAxisGainValue","Name":"X-axis gain value","Description":"default 100, range 50 to 500","BitLength":16,"BitOffset":42,"BitStart":2,"Resolution":"0.01","Signed":true},{"Order":9,"Id":"yAxisGainValue","Name":"Y-axis gain value","Description":"default 100, range 50 to 500","BitLength":16,"BitOffset":58,"BitStart":2,"Resolution":"0.01","Signed":true},{"Order":10,"Id":"zAxisGainValue","Name":"Z-axis gain value","Description":"default 100, range 50 to 500","BitLength":16,"BitOffset":74,"BitStart":2,"Resolution":"0.01","Signed":true},{"Order":11,"Id":"xAxisLinearOffset","Name":"X-axis linear offset","Description":"default 0, range -320.00 to 320.00","BitLength":16,"BitOffset":90,"BitStart":2,"Units":"Tesla","Resolution":"0.01","Signed":true},{"Order":12,"Id":"yAxisLinearOffset","Name":"Y-axis linear offset","Description":"default 0, range -320.00 to 320.00","BitLength":16,"BitOffset":106,"BitStart":2,"Units":"Tesla","Resolution":"0.01","Signed":true},{"Order":13,"Id":"zAxisLinearOffset","Name":"Z-axis linear offset","Description":"default 0, range -320.00 to 320.00","BitLength":16,"BitOffset":122,"BitStart":2,"Units":"Tesla","Resolution":"0.01","Signed":true},{"Order":14,"Id":"xAxisAngularOffset","Name":"X-axis angular offset","Description":"default 0, range 0 to 3600","BitLength":16,"BitOffset":138,"BitStart":2,"Units":"deg","Resolution":"0.1","Signed":true},{"Order":15,"Id":"pitchAndRollDamping","Name":"Pitch and Roll damping","Description":"default 30, range 0 to 200","BitLength":16,"BitOffset":154,"BitStart":2,"Units":"s","Resolution":"0.05","Signed":true},{"Order":16,"Id":"compassRateGyroDamping","Name":"Compass/Rate gyro damping","Description":"default -30, range -2400 to 2400, negative indicates rate gyro is to be used in compass calculations","BitLength":16,"BitOffset":170,"BitStart":2,"Units":"s","Resolution":"0.05","Signed":true}]},{"PGN":126720,"Id":"airmarSimulateMode","Description":"Airmar: Simulate Mode","Type":"Fast","Complete":true,"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Simulate Mode","BitLength":8,"BitOffset":16,"BitStart":0,"Match":35,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"simulateMode","Name":"Simulate Mode","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":22,"BitOffset":26,"BitStart":2,"Type":"Binary data","Signed":false}]},{"PGN":126720,"Id":"airmarCalibrateDepth","Description":"Airmar: Calibrate Depth","Type":"Fast","Complete":true,"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Calibrate Depth","BitLength":8,"BitOffset":16,"BitStart":0,"Match":40,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"speedOfSoundMode","Name":"Speed of Sound Mode","Description":"actual allowed range is 1350.0 to 1650.0 m/s","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"m/s","Resolution":"0.1","Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":126720,"Id":"airmarCalibrateSpeed","Description":"Airmar: Calibrate Speed","Type":"Fast","Complete":true,"Length":12,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Calibrate Speed","BitLength":8,"BitOffset":16,"BitStart":0,"Match":41,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"numberOfPairsOfDataPoints","Name":"Number of pairs of data points","Description":"actual range is 0 to 25. 254=restore default speed curve","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"inputFrequency","Name":"Input frequency","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":"0.1","Signed":false},{"Order":7,"Id":"outputSpeed","Name":"Output speed","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false}]},{"PGN":126720,"Id":"airmarCalibrateTemperature","Description":"Airmar: Calibrate Temperature","Type":"Fast","Complete":true,"Length":6,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Calibrate Temperature","BitLength":8,"BitOffset":16,"BitStart":0,"Match":42,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"temperatureInstance","Name":"Temperature instance","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Device Sensor","value":"0"},{"name":"Onboard Water Sensor","value":"1"},{"name":"Optional Water Sensor","value":"2"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":6,"BitOffset":26,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":7,"Id":"temperatureOffset","Name":"Temperature offset","Description":"actual range is -9.999 to +9.999 K","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"K","Resolution":"0.001","Signed":true}]},{"PGN":126720,"Id":"airmarSpeedFilter","Description":"Airmar: Speed Filter","Type":"Fast","Complete":true,"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Speed Filter","BitLength":8,"BitOffset":16,"BitStart":0,"Match":43,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"filterType","Name":"Filter type","BitLength":4,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"no filter","value":"0"},{"name":"basic IIR filter","value":"1"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":28,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":7,"Id":"sampleInterval","Name":"Sample interval","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"s","Resolution":"0.01","Signed":false},{"Order":8,"Id":"filterDuration","Name":"Filter duration","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"s","Resolution":"0.01","Signed":false}]},{"PGN":126720,"Id":"airmarTemperatureFilter","Description":"Airmar: Temperature Filter","Type":"Fast","Complete":true,"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Temperature Filter","BitLength":8,"BitOffset":16,"BitStart":0,"Match":44,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"filterType","Name":"Filter type","BitLength":4,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"no filter","value":"0"},{"name":"basic IIR filter","value":"1"},{"name":"data not available","value":"15"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":28,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":7,"Id":"sampleInterval","Name":"Sample interval","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"s","Resolution":"0.01","Signed":false},{"Order":8,"Id":"filterDuration","Name":"Filter duration","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"s","Resolution":"0.01","Signed":false}]},{"PGN":126720,"Id":"airmarNmea2000Options","Description":"Airmar: NMEA 2000 options","Type":"Fast","Complete":true,"Length":6,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"NMEA 2000 options","BitLength":8,"BitOffset":16,"BitStart":0,"Match":46,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"transmissionInterval","Name":"Transmission Interval","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Measure Interval","value":"0"},{"name":"Requested by user","value":"1"},{"name":"reserved","value":"2"},{"name":"data not available","value":"3"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":22,"BitOffset":26,"BitStart":2,"Type":"Binary data","Signed":false}]},{"PGN":126720,"Id":"airmarAddressableMultiFrame","Description":"Airmar: Addressable Multi-Frame","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":4,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":126720,"Id":"maretronSlaveResponse","Description":"Maretron: Slave Response","Type":"Fast","Complete":false,"Missing":["Lookups"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Maretron","BitLength":11,"BitOffset":0,"BitStart":0,"Match":137,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"productCode","Name":"Product code","Description":"0x1b2=SSC200","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"softwareCode","Name":"Software code","BitLength":16,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"command","Name":"Command","Description":"0x50=Deviation calibration result","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"status","Name":"Status","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false}]},{"PGN":126720,"Id":"manufacturerProprietaryFastPacketAddressed","Description":"Manufacturer Proprietary fast-packet addressed","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":223,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":0,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":13,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":4,"Id":"data","Name":"Data","BitLength":1768,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":126976,"Id":"unknownFastPacketNonAddressed","Description":"Unknown fast-packet non-addressed","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":255,"RepeatingFields":0,"Fields":{"Field":{"Order":1,"Id":"data","Name":"Data","BitLength":2040,"BitOffset":0,"BitStart":0,"Type":"Binary data","Signed":false}}},{"PGN":126983,"Id":"alert","Description":"Alert","Type":"Fast","Complete":true,"Length":28,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"alertType","Name":"Alert Type","BitLength":4,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Reserved","value":"0"},{"name":"Emergency Alarm","value":"1"},{"name":"Alarm","value":"2"},{"name":"Reserved","value":"3"},{"name":"Reserved","value":"4"},{"name":"Warning","value":"5"},{"name":"Reserved","value":"6"},{"name":"Reserved","value":"7"},{"name":"Caution","value":"8"},{"name":"Reserved","value":"13"},{"name":"Data out of range","value":"14"},{"name":"Data not available","value":"15"}]},{"Order":2,"Id":"alertCategory","Name":"Alert Category","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Navigational","value":"0"},{"name":"Technical","value":"1"},{"name":"Reserved","value":"13"},{"name":"Data out of range","value":"14"},{"name":"Data not available","value":"15"}]},{"Order":3,"Id":"alertSystem","Name":"Alert System","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":4,"Id":"alertSubSystem","Name":"Alert Sub-System","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"alertId","Name":"Alert ID","BitLength":16,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"dataSourceNetworkIdName","Name":"Data Source Network ID NAME","BitLength":64,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"dataSourceInstance","Name":"Data Source Instance","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":false},{"Order":8,"Id":"dataSourceIndexSource","Name":"Data Source Index-Source","BitLength":8,"BitOffset":112,"BitStart":0,"Signed":false},{"Order":9,"Id":"alertOccurrenceNumber","Name":"Alert Occurrence Number","BitLength":8,"BitOffset":120,"BitStart":0,"Signed":false},{"Order":10,"Id":"temporarySilenceStatus","Name":"Temporary Silence Status","BitLength":1,"BitOffset":128,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not Temporary Silence","value":"0"},{"name":"Temporary Silence","value":"1"}]},{"Order":11,"Id":"acknowledgeStatus","Name":"Acknowledge Status","BitLength":1,"BitOffset":129,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not Acknowledged","value":"0"},{"name":"Acknowledged","value":"1"}]},{"Order":12,"Id":"escalationStatus","Name":"Escalation Status","BitLength":1,"BitOffset":130,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not Escalated","value":"0"},{"name":"Escalated","value":"1"}]},{"Order":13,"Id":"temporarySilenceSupport","Name":"Temporary Silence Support","BitLength":1,"BitOffset":131,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not Supported","value":"0"},{"name":"Supported","value":"1"}]},{"Order":14,"Id":"acknowledgeSupport","Name":"Acknowledge Support","BitLength":1,"BitOffset":132,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not Supported","value":"0"},{"name":"Supported","value":"1"}]},{"Order":15,"Id":"escalationSupport","Name":"Escalation Support","BitLength":1,"BitOffset":133,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not Supported","value":"0"},{"name":"Supported","value":"1"}]},{"Order":16,"Id":"nmeaReserved","Name":"NMEA Reserved","BitLength":2,"BitOffset":134,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":17,"Id":"acknowledgeSourceNetworkIdName","Name":"Acknowledge Source Network ID NAME","BitLength":64,"BitOffset":136,"BitStart":0,"Signed":false},{"Order":18,"Id":"triggerCondition","Name":"Trigger Condition","BitLength":4,"BitOffset":200,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Manual","value":"0"},{"name":"Auto","value":"1"},{"name":"Test","value":"2"},{"name":"Disabled","value":"3"},{"name":"Reserved","value":"13"},{"name":"Data out of range","value":"14"},{"name":"Data not available","value":"15"}]},{"Order":19,"Id":"thresholdStatus","Name":"Threshold Status","BitLength":4,"BitOffset":204,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Normal","value":"0"},{"name":"Threshold Exceeded","value":"1"},{"name":"Extreme Threshold Exceeded","value":"2"},{"name":"Low Threshold Exceeded","value":"3"},{"name":"Acknowledged","value":"4"},{"name":"Awaiting Acknowledge","value":"5"},{"name":"Reserved","value":"253"},{"name":"Data out of range","value":"254"},{"name":"Data not available","value":"255"}]},{"Order":20,"Id":"alertPriority","Name":"Alert Priority","BitLength":8,"BitOffset":208,"BitStart":0,"Signed":false},{"Order":21,"Id":"alertState","Name":"Alert State","BitLength":8,"BitOffset":216,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Disabled","value":"0"},{"name":"Normal","value":"1"},{"name":"Active","value":"2"},{"name":"Silenced","value":"3"},{"name":"Acknowledged","value":"4"},{"name":"Awaiting Acknowledge","value":"5"},{"name":"Reserved","value":"253"},{"name":"Data out of range","value":"254"},{"name":"Data not available","value":"255"}]}]},{"PGN":126984,"Id":"alertResponse","Description":"Alert Response","Type":"Fast","Complete":true,"Length":25,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"alertType","Name":"Alert Type","BitLength":4,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Reserved","value":"0"},{"name":"Emergency Alarm","value":"1"},{"name":"Alarm","value":"2"},{"name":"Reserved","value":"3"},{"name":"Reserved","value":"4"},{"name":"Warning","value":"5"},{"name":"Reserved","value":"6"},{"name":"Reserved","value":"7"},{"name":"Caution","value":"8"},{"name":"Reserved","value":"13"},{"name":"Data out of range","value":"14"},{"name":"Data not available","value":"15"}]},{"Order":2,"Id":"alertCategory","Name":"Alert Category","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Navigational","value":"0"},{"name":"Technical","value":"1"},{"name":"Reserved","value":"13"},{"name":"Data out of range","value":"14"},{"name":"Data not available","value":"15"}]},{"Order":3,"Id":"alertSystem","Name":"Alert System","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":4,"Id":"alertSubSystem","Name":"Alert Sub-System","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"alertId","Name":"Alert ID","BitLength":16,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"dataSourceNetworkIdName","Name":"Data Source Network ID NAME","BitLength":64,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"dataSourceInstance","Name":"Data Source Instance","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":false},{"Order":8,"Id":"dataSourceIndexSource","Name":"Data Source Index-Source","BitLength":8,"BitOffset":112,"BitStart":0,"Signed":false},{"Order":9,"Id":"alertOccurrenceNumber","Name":"Alert Occurrence Number","BitLength":8,"BitOffset":120,"BitStart":0,"Signed":false},{"Order":10,"Id":"acknowledgeSourceNetworkIdName","Name":"Acknowledge Source Network ID NAME","BitLength":64,"BitOffset":128,"BitStart":0,"Signed":false},{"Order":11,"Id":"responseCommand","Name":"Response Command","BitLength":2,"BitOffset":192,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Acknowledge","value":"0"},{"name":"Temporary Silence","value":"1"},{"name":"Test Command off","value":"2"},{"name":"Test Command on","value":"3"}]},{"Order":12,"Id":"nmeaReserved","Name":"NMEA Reserved","BitLength":6,"BitOffset":194,"BitStart":2,"Type":"Binary data","Signed":false}]},{"PGN":126985,"Id":"alertText","Description":"Alert Text","Type":"Fast","Complete":true,"Length":49,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"alertType","Name":"Alert Type","BitLength":4,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Reserved","value":"0"},{"name":"Emergency Alarm","value":"1"},{"name":"Alarm","value":"2"},{"name":"Reserved","value":"3"},{"name":"Reserved","value":"4"},{"name":"Warning","value":"5"},{"name":"Reserved","value":"6"},{"name":"Reserved","value":"7"},{"name":"Caution","value":"8"},{"name":"Reserved","value":"13"},{"name":"Data out of range","value":"14"},{"name":"Data not available","value":"15"}]},{"Order":2,"Id":"alertCategory","Name":"Alert Category","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Navigational","value":"0"},{"name":"Technical","value":"1"},{"name":"Reserved","value":"13"},{"name":"Data out of range","value":"14"},{"name":"Data not available","value":"15"}]},{"Order":3,"Id":"alertSystem","Name":"Alert System","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":4,"Id":"alertSubSystem","Name":"Alert Sub-System","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"alertId","Name":"Alert ID","BitLength":16,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"dataSourceNetworkIdName","Name":"Data Source Network ID NAME","BitLength":64,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"dataSourceInstance","Name":"Data Source Instance","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":false},{"Order":8,"Id":"dataSourceIndexSource","Name":"Data Source Index-Source","BitLength":8,"BitOffset":112,"BitStart":0,"Signed":false},{"Order":9,"Id":"alertOccurrenceNumber","Name":"Alert Occurrence Number","BitLength":8,"BitOffset":120,"BitStart":0,"Signed":false},{"Order":10,"Id":"languageId","Name":"Language ID","BitLength":8,"BitOffset":128,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"English (US)","value":"0"},{"name":"English (UK)","value":"1"},{"name":"Arabic","value":"2"},{"name":"Chinese (simplified)","value":"3"},{"name":"Croatian","value":"4"},{"name":"Danish","value":"5"},{"name":"Dutch","value":"6"},{"name":"Finnish","value":"7"},{"name":"French","value":"8"},{"name":"German","value":"9"},{"name":"Greek","value":"10"},{"name":"Italian","value":"11"},{"name":"Japanese","value":"12"},{"name":"Korean","value":"13"},{"name":"Norwegian","value":"14"},{"name":"Polish","value":"15"},{"name":"Portuguese","value":"16"},{"name":"Russian","value":"17"},{"name":"Spanish","value":"18"},{"name":"Sweedish","value":"19"}]},{"Order":11,"Id":"alertTextDescription","Name":"Alert Text Description","BitLength":128,"BitOffset":136,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":12,"Id":"alertLocationTextDescription","Name":"Alert Location Text Description","BitLength":128,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":126986,"Id":"alertConfiguration","Description":"Alert Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0},{"PGN":126987,"Id":"alertThreshold","Description":"Alert Threshold","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0},{"PGN":126988,"Id":"alertValue","Description":"Alert Value","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0},{"PGN":126992,"Id":"systemTime","Description":"System Time","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"source","Name":"Source","BitLength":4,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"GPS","value":"0"},{"name":"GLONASS","value":"1"},{"name":"Radio Station","value":"2"},{"name":"Local Cesium clock","value":"3"},{"name":"Local Rubidium clock","value":"4"},{"name":"Local Crystal clock","value":"5"}]},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":12,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":4,"Id":"date","Name":"Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":5,"Id":"time","Name":"Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false}]},{"PGN":126993,"Id":"heartbeat","Description":"Heartbeat","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"dataTransmitOffset","Name":"Data transmit offset","Description":"Offset in transmit time from time of request command: 0x0 = transmit immediately, 0xFFFF = Do not change offset.","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"s","Resolution":"0.01","Signed":false},{"Order":2,"Id":"sequenceCounter","Name":"Sequence Counter","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":24,"BitOffset":24,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":126996,"Id":"productInformation","Description":"Product Information","Type":"Fast","Complete":true,"Length":134,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"nmea2000Version","Name":"NMEA 2000 Version","BitLength":16,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"productCode","Name":"Product Code","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":3,"Id":"modelId","Name":"Model ID","BitLength":256,"BitOffset":32,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":4,"Id":"softwareVersionCode","Name":"Software Version Code","BitLength":256,"BitOffset":288,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":5,"Id":"modelVersion","Name":"Model Version","BitLength":256,"BitOffset":544,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":6,"Id":"modelSerialCode","Name":"Model Serial Code","BitLength":256,"BitOffset":800,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":7,"Id":"certificationLevel","Name":"Certification Level","BitLength":8,"BitOffset":1056,"BitStart":0,"Signed":false},{"Order":8,"Id":"loadEquivalency","Name":"Load Equivalency","BitLength":8,"BitOffset":1064,"BitStart":0,"Signed":false}]},{"PGN":126998,"Id":"configurationInformation","Description":"Configuration Information","Type":"Fast","Complete":true,"Length":42,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"installationDescription1","Name":"Installation Description #1","BitLength":16,"BitOffset":0,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":2,"Id":"installationDescription2","Name":"Installation Description #2","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":3,"Id":"installationDescription3","Name":"Installation Description #3","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":4,"Id":"manufacturerInformation","Name":"Manufacturer Information","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":127233,"Id":"manOverboardNotification","Description":"Man Overboard Notification","Type":"Fast","Complete":true,"Length":35,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"mobEmitterId","Name":"MOB Emitter ID","Description":"Identifier for each MOB emitter, unique to the vessel","BitLength":32,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"manOverboardStatus","Name":"Man Overboard Status","BitLength":3,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"MOB Emitter Activated","value":"0"},{"name":"Manual on-board MOB Button Activation","value":"1"},{"name":"Test Mode","value":"2"},{"name":"MOB Not Active","value":"3"}]},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":5,"BitOffset":43,"BitStart":3,"Type":"Binary data","Signed":false},{"Order":5,"Id":"activationTime","Name":"Activation Time","Description":"Time of day (UTC) when MOB was activated","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":6,"Id":"positionSource","Name":"Position Source","BitLength":3,"BitOffset":80,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Position estimated by the Vessel","value":"0"},{"name":"Position reported by MOB emitter","value":"1"}]},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":5,"BitOffset":83,"BitStart":3,"Type":"Binary data","Signed":false},{"Order":8,"Id":"positionDate","Name":"Position Date","Description":"Date of MOB position","BitLength":16,"BitOffset":88,"BitStart":0,"Units":null,"Type":"Date","Resolution":1,"Signed":false},{"Order":9,"Id":"positionTime","Name":"Position Time","Description":"Time of day of MOB position (UTC)","BitLength":32,"BitOffset":104,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":136,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":11,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":168,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":12,"Id":"cogReference","Name":"COG Reference","BitLength":2,"BitOffset":200,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":13,"Id":"reserved","Name":"Reserved","BitLength":6,"BitOffset":202,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":14,"Id":"cog","Name":"COG","BitLength":16,"BitOffset":208,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":15,"Id":"sog","Name":"SOG","BitLength":16,"BitOffset":224,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":16,"Id":"mmsiOfVesselOfOrigin","Name":"MMSI of vessel of origin","BitLength":32,"BitOffset":240,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":17,"Id":"mobEmitterBatteryStatus","Name":"MOB Emitter Battery Status","BitLength":3,"BitOffset":272,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Good","value":"0"},{"name":"Low","value":"1"}]},{"Order":18,"Id":"reserved","Name":"Reserved","BitLength":5,"BitOffset":275,"BitStart":3,"Type":"Binary data","Signed":false}]},{"PGN":127237,"Id":"headingTrackControl","Description":"Heading/Track control","Type":"Fast","Complete":true,"Length":21,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"rudderLimitExceeded","Name":"Rudder Limit Exceeded","BitLength":2,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":2,"Id":"offHeadingLimitExceeded","Name":"Off-Heading Limit Exceeded","BitLength":2,"BitOffset":2,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":3,"Id":"offTrackLimitExceeded","Name":"Off-Track Limit Exceeded","BitLength":2,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":4,"Id":"override","Name":"Override","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":5,"Id":"steeringMode","Name":"Steering Mode","BitLength":3,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Main Steering","value":"0"},{"name":"Non-Follow-up Device","value":"1"},{"name":"Follow-up Device","value":"10"},{"name":"Heading Control Standalone","value":"11"},{"name":"Heading Control","value":"100"},{"name":"Track Control","value":"101"}]},{"Order":6,"Id":"turnMode","Name":"Turn Mode","BitLength":3,"BitOffset":11,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Rudder Limit controlled","value":"0"},{"name":"turn rate controlled","value":"1"},{"name":"radius controlled","value":"10"}]},{"Order":7,"Id":"headingReference","Name":"Heading Reference","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":8,"Id":"reserved","Name":"Reserved","BitLength":5,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":9,"Id":"commandedRudderDirection","Name":"Commanded Rudder Direction","BitLength":3,"BitOffset":21,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No Order","value":"0"},{"name":"Move to starboard","value":"1"},{"name":"Move to port","value":"10"}]},{"Order":10,"Id":"commandedRudderAngle","Name":"Commanded Rudder Angle","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":11,"Id":"headingToSteerCourse","Name":"Heading-To-Steer (Course)","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":12,"Id":"track","Name":"Track","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":13,"Id":"rudderLimit","Name":"Rudder Limit","BitLength":16,"BitOffset":72,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":14,"Id":"offHeadingLimit","Name":"Off-Heading Limit","BitLength":16,"BitOffset":88,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":15,"Id":"radiusOfTurnOrder","Name":"Radius of Turn Order","BitLength":16,"BitOffset":104,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":16,"Id":"rateOfTurnOrder","Name":"Rate of Turn Order","BitLength":16,"BitOffset":120,"BitStart":0,"Units":"rad/s","Resolution":0.00003125,"Signed":true},{"Order":17,"Id":"offTrackLimit","Name":"Off-Track Limit","BitLength":16,"BitOffset":136,"BitStart":0,"Units":"m","Signed":true},{"Order":18,"Id":"vesselHeading","Name":"Vessel Heading","BitLength":16,"BitOffset":152,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false}]},{"PGN":127245,"Id":"rudder","Description":"Rudder","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"directionOrder","Name":"Direction Order","BitLength":2,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":6,"BitOffset":10,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":4,"Id":"angleOrder","Name":"Angle Order","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":5,"Id":"position","Name":"Position","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true}]},{"PGN":127250,"Id":"vesselHeading","Description":"Vessel Heading","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"heading","Name":"Heading","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":3,"Id":"deviation","Name":"Deviation","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":4,"Id":"variation","Name":"Variation","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":5,"Id":"reference","Name":"Reference","BitLength":2,"BitOffset":56,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":6,"BitOffset":58,"BitStart":2,"Type":"Binary data","Signed":false}]},{"PGN":127251,"Id":"rateOfTurn","Description":"Rate of Turn","Type":"Single","Complete":true,"Length":5,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"rate","Name":"Rate","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"rad/s","Resolution":3.125e-8,"Signed":true}]},{"PGN":127257,"Id":"attitude","Description":"Attitude","Type":"Single","Complete":true,"Length":7,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"yaw","Name":"Yaw","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":3,"Id":"pitch","Name":"Pitch","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":4,"Id":"roll","Name":"Roll","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true}]},{"PGN":127258,"Id":"magneticVariation","Description":"Magnetic Variation","Type":"Single","Complete":true,"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"source","Name":"Source","BitLength":4,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Manual","value":"0"},{"name":"Automatic Chart","value":"1"},{"name":"Automatic Table","value":"2"},{"name":"Automatic Calculation","value":"3"},{"name":"WMM 2000","value":"4"},{"name":"WMM 2005","value":"5"},{"name":"WMM 2010","value":"6"},{"name":"WMM 2015","value":"7"},{"name":"WMM 2020","value":"8"}]},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":12,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":4,"Id":"ageOfService","Name":"Age of service","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":5,"Id":"variation","Name":"Variation","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true}]},{"PGN":127488,"Id":"engineParametersRapidUpdate","Description":"Engine Parameters, Rapid Update","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Single Engine or Dual Engine Port","value":"0"},{"name":"Dual Engine Starboard","value":"1"}]},{"Order":2,"Id":"speed","Name":"Speed","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"rpm","Resolution":"0.25","Signed":false},{"Order":3,"Id":"boostPressure","Name":"Boost Pressure","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":4,"Id":"tiltTrim","Name":"Tilt/Trim","BitLength":8,"BitOffset":40,"BitStart":0,"Units":null,"Signed":true},{"Order":5,"Id":"reserved","Name":"Reserved","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":127489,"Id":"engineParametersDynamic","Description":"Engine Parameters, Dynamic","Type":"Fast","Complete":true,"Length":26,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Single Engine or Dual Engine Port","value":"0"},{"name":"Dual Engine Starboard","value":"1"}]},{"Order":2,"Id":"oilPressure","Name":"Oil pressure","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":3,"Id":"oilTemperature","Name":"Oil temperature","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.1","Signed":false},{"Order":4,"Id":"temperature","Name":"Temperature","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":5,"Id":"alternatorPotential","Name":"Alternator Potential","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"V","Resolution":"0.01","Signed":true},{"Order":6,"Id":"fuelRate","Name":"Fuel Rate","BitLength":16,"BitOffset":72,"BitStart":0,"Units":"L/h","Resolution":"0.1","Signed":true},{"Order":7,"Id":"totalEngineHours","Name":"Total Engine hours","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"s","Signed":false},{"Order":8,"Id":"coolantPressure","Name":"Coolant Pressure","BitLength":16,"BitOffset":120,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":9,"Id":"fuelPressure","Name":"Fuel Pressure","BitLength":16,"BitOffset":136,"BitStart":0,"Units":"kPa","Signed":false},{"Order":10,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":152,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":11,"Id":"discreteStatus1","Name":"Discrete Status 1","BitLength":16,"BitOffset":160,"BitStart":0,"Type":"Bitfield","Signed":false,"EnumBitValues":[{"0":"Check Engine"},{"1":"Over Temperature"},{"2":"Low Oil Pressure"},{"3":"Low Oil Level"},{"4":"Low Fuel Pressure"},{"5":"Low System Voltage"},{"6":"Low Coolant Level"},{"7":"Water Flow"},{"8":"Water In Fuel"},{"9":"Charge Indicator"},{"10":"Preheat Indicator"},{"11":"High Boost Pressure"},{"12":"Rev Limit Exceeded"},{"13":"EGR System"},{"14":"Throttle Position Sensor"},{"15":"Emergency Stop"}]},{"Order":12,"Id":"discreteStatus2","Name":"Discrete Status 2","BitLength":16,"BitOffset":176,"BitStart":0,"Type":"Bitfield","Signed":false,"EnumBitValues":[{"0":"Warning Level 1"},{"1":"Warning Level 2"},{"2":"Power Reduction"},{"3":"Maintenance Needed"},{"4":"Engine Comm Error"},{"5":"Sub or Secondary Throttle"},{"6":"Neutral Start Protect"},{"7":"Engine Shutting Down"}]},{"Order":13,"Id":"percentEngineLoad","Name":"Percent Engine Load","BitLength":8,"BitOffset":192,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true},{"Order":14,"Id":"percentEngineTorque","Name":"Percent Engine Torque","BitLength":8,"BitOffset":200,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true}]},{"PGN":127493,"Id":"transmissionParametersDynamic","Description":"Transmission Parameters, Dynamic","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Single Engine or Dual Engine Port","value":"0"},{"name":"Dual Engine Starboard","value":"1"}]},{"Order":2,"Id":"transmissionGear","Name":"Transmission Gear","BitLength":2,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Forward","value":"0"},{"name":"Neutral","value":"1"},{"name":"Reverse","value":"2"}]},{"Order":3,"Id":"reserved","Name":"Reserved","BitLength":6,"BitOffset":10,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":4,"Id":"oilPressure","Name":"Oil pressure","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":5,"Id":"oilTemperature","Name":"Oil temperature","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.1","Signed":false},{"Order":6,"Id":"discreteStatus1","Name":"Discrete Status 1","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":127496,"Id":"tripParametersVessel","Description":"Trip Parameters, Vessel","Type":"Fast","Complete":true,"Length":10,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"timeToEmpty","Name":"Time to Empty","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false},{"Order":2,"Id":"distanceToEmpty","Name":"Distance to Empty","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":3,"Id":"estimatedFuelRemaining","Name":"Estimated Fuel Remaining","BitLength":16,"BitOffset":64,"BitStart":0,"Units":"L","Signed":false},{"Order":4,"Id":"tripRunTime","Name":"Trip Run Time","BitLength":32,"BitOffset":80,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false}]},{"PGN":127497,"Id":"tripParametersEngine","Description":"Trip Parameters, Engine","Type":"Fast","Complete":true,"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Single Engine or Dual Engine Port","value":"0"},{"name":"Dual Engine Starboard","value":"1"}]},{"Order":2,"Id":"tripFuelUsed","Name":"Trip Fuel Used","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"L","Signed":false},{"Order":3,"Id":"fuelRateAverage","Name":"Fuel Rate, Average","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"L/h","Resolution":"0.1","Signed":true},{"Order":4,"Id":"fuelRateEconomy","Name":"Fuel Rate, Economy","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"L/h","Resolution":"0.1","Signed":true},{"Order":5,"Id":"instantaneousFuelEconomy","Name":"Instantaneous Fuel Economy","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"L/h","Resolution":"0.1","Signed":true}]},{"PGN":127498,"Id":"engineParametersStatic","Description":"Engine Parameters, Static","Type":"Fast","Complete":true,"Length":52,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Single Engine or Dual Engine Port","value":"0"},{"name":"Dual Engine Starboard","value":"1"}]},{"Order":2,"Id":"ratedEngineSpeed","Name":"Rated Engine Speed","Description":"rpm","BitLength":16,"BitOffset":8,"BitStart":0,"Resolution":"0.25","Signed":false},{"Order":3,"Id":"vin","Name":"VIN","BitLength":136,"BitOffset":24,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":4,"Id":"softwareId","Name":"Software ID","BitLength":256,"BitOffset":160,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":127500,"Id":"loadControllerConnectionStateControl","Description":"Load Controller Connection State/Control","Type":"Fast","Complete":true,"Length":10,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sequenceId","Name":"Sequence ID","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"connectionId","Name":"Connection ID","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"state","Name":"State","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"status","Name":"Status","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"operationalStatusControl","Name":"Operational Status & Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"pwmDutyCycle","Name":"PWM Duty Cycle","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"timeon","Name":"TimeON","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"timeoff","Name":"TimeOFF","BitLength":16,"BitOffset":64,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":127501,"Id":"binarySwitchBankStatus","Description":"Binary Switch Bank Status","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"indicator1","Name":"Indicator1","BitLength":2,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":3,"Id":"indicator2","Name":"Indicator2","BitLength":2,"BitOffset":10,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":4,"Id":"indicator3","Name":"Indicator3","BitLength":2,"BitOffset":12,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":5,"Id":"indicator4","Name":"Indicator4","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":6,"Id":"indicator5","Name":"Indicator5","BitLength":2,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":7,"Id":"indicator6","Name":"Indicator6","BitLength":2,"BitOffset":18,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":8,"Id":"indicator7","Name":"Indicator7","BitLength":2,"BitOffset":20,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":9,"Id":"indicator8","Name":"Indicator8","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":10,"Id":"indicator9","Name":"Indicator9","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":11,"Id":"indicator10","Name":"Indicator10","BitLength":2,"BitOffset":26,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":12,"Id":"indicator11","Name":"Indicator11","BitLength":2,"BitOffset":28,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":13,"Id":"indicator12","Name":"Indicator12","BitLength":2,"BitOffset":30,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":14,"Id":"indicator13","Name":"Indicator13","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":15,"Id":"indicator14","Name":"Indicator14","BitLength":2,"BitOffset":34,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":16,"Id":"indicator15","Name":"Indicator15","BitLength":2,"BitOffset":36,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":17,"Id":"indicator16","Name":"Indicator16","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":18,"Id":"indicator17","Name":"Indicator17","BitLength":2,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":19,"Id":"indicator18","Name":"Indicator18","BitLength":2,"BitOffset":42,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":20,"Id":"indicator19","Name":"Indicator19","BitLength":2,"BitOffset":44,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":21,"Id":"indicator20","Name":"Indicator20","BitLength":2,"BitOffset":46,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":22,"Id":"indicator21","Name":"Indicator21","BitLength":2,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":23,"Id":"indicator22","Name":"Indicator22","BitLength":2,"BitOffset":50,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":24,"Id":"indicator23","Name":"Indicator23","BitLength":2,"BitOffset":52,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":25,"Id":"indicator24","Name":"Indicator24","BitLength":2,"BitOffset":54,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":26,"Id":"indicator25","Name":"Indicator25","BitLength":2,"BitOffset":56,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":27,"Id":"indicator26","Name":"Indicator26","BitLength":2,"BitOffset":58,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":28,"Id":"indicator27","Name":"Indicator27","BitLength":2,"BitOffset":60,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":29,"Id":"indicator28","Name":"Indicator28","BitLength":2,"BitOffset":62,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]}]},{"PGN":127502,"Id":"switchBankControl","Description":"Switch Bank Control","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"switchBankInstance","Name":"Switch Bank Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"switch1","Name":"Switch1","BitLength":2,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":3,"Id":"switch2","Name":"Switch2","BitLength":2,"BitOffset":10,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":4,"Id":"switch3","Name":"Switch3","BitLength":2,"BitOffset":12,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":5,"Id":"switch4","Name":"Switch4","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":6,"Id":"switch5","Name":"Switch5","BitLength":2,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":7,"Id":"switch6","Name":"Switch6","BitLength":2,"BitOffset":18,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":8,"Id":"switch7","Name":"Switch7","BitLength":2,"BitOffset":20,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":9,"Id":"switch8","Name":"Switch8","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":10,"Id":"switch9","Name":"Switch9","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":11,"Id":"switch10","Name":"Switch10","BitLength":2,"BitOffset":26,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":12,"Id":"switch11","Name":"Switch11","BitLength":2,"BitOffset":28,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":13,"Id":"switch12","Name":"Switch12","BitLength":2,"BitOffset":30,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":14,"Id":"switch13","Name":"Switch13","BitLength":2,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":15,"Id":"switch14","Name":"Switch14","BitLength":2,"BitOffset":34,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":16,"Id":"switch15","Name":"Switch15","BitLength":2,"BitOffset":36,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":17,"Id":"switch16","Name":"Switch16","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":18,"Id":"switch17","Name":"Switch17","BitLength":2,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":19,"Id":"switch18","Name":"Switch18","BitLength":2,"BitOffset":42,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":20,"Id":"switch19","Name":"Switch19","BitLength":2,"BitOffset":44,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":21,"Id":"switch20","Name":"Switch20","BitLength":2,"BitOffset":46,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":22,"Id":"switch21","Name":"Switch21","BitLength":2,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":23,"Id":"switch22","Name":"Switch22","BitLength":2,"BitOffset":50,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":24,"Id":"switch23","Name":"Switch23","BitLength":2,"BitOffset":52,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":25,"Id":"switch24","Name":"Switch24","BitLength":2,"BitOffset":54,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":26,"Id":"switch25","Name":"Switch25","BitLength":2,"BitOffset":56,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":27,"Id":"switch26","Name":"Switch26","BitLength":2,"BitOffset":58,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":28,"Id":"switch27","Name":"Switch27","BitLength":2,"BitOffset":60,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":29,"Id":"switch28","Name":"Switch28","BitLength":2,"BitOffset":62,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]}]},{"PGN":127503,"Id":"acInputStatus","Description":"AC Input Status","Type":"Fast","Complete":true,"Length":56,"RepeatingFields":10,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"numberOfLines","Name":"Number of Lines","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"line","Name":"Line","BitLength":2,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Line 1","value":"0"},{"name":"Line 2","value":"1"},{"name":"Line 3","value":"2"},{"name":"Reserved","value":"3"}]},{"Order":4,"Id":"acceptability","Name":"Acceptability","BitLength":2,"BitOffset":18,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Bad Level","value":"0"},{"name":"Bad Frequency","value":"1"},{"name":"Being Qualified","value":"2"},{"name":"Good","value":"3"}]},{"Order":5,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":20,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":6,"Id":"voltage","Name":"Voltage","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"V","Resolution":"0.01","Signed":false},{"Order":7,"Id":"current","Name":"Current","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":8,"Id":"frequency","Name":"Frequency","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"Hz","Resolution":"0.01","Signed":false},{"Order":9,"Id":"breakerSize","Name":"Breaker Size","BitLength":16,"BitOffset":72,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":10,"Id":"realPower","Name":"Real Power","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"W","Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"reactivePower","Name":"Reactive Power","BitLength":32,"BitOffset":120,"BitStart":0,"Units":"VAR","Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"powerFactor","Name":"Power Factor","BitLength":8,"BitOffset":152,"BitStart":0,"Units":"Cos Phi","Resolution":"0.01","Signed":false}]},{"PGN":127504,"Id":"acOutputStatus","Description":"AC Output Status","Type":"Single","Complete":true,"Length":56,"RepeatingFields":10,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"numberOfLines","Name":"Number of Lines","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"line","Name":"Line","BitLength":2,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Line 1","value":"0"},{"name":"Line 2","value":"1"},{"name":"Line 3","value":"2"}]},{"Order":4,"Id":"waveform","Name":"Waveform","BitLength":3,"BitOffset":18,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Sine Wave","value":"0"},{"name":"Modified Sine Wave","value":"1"}]},{"Order":5,"Id":"reserved","Name":"Reserved","BitLength":3,"BitOffset":21,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":6,"Id":"voltage","Name":"Voltage","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"V","Resolution":"0.01","Signed":false},{"Order":7,"Id":"current","Name":"Current","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":8,"Id":"frequency","Name":"Frequency","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"Hz","Resolution":"0.01","Signed":false},{"Order":9,"Id":"breakerSize","Name":"Breaker Size","BitLength":16,"BitOffset":72,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":10,"Id":"realPower","Name":"Real Power","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"W","Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"reactivePower","Name":"Reactive Power","BitLength":32,"BitOffset":120,"BitStart":0,"Units":"VAR","Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"powerFactor","Name":"Power Factor","BitLength":8,"BitOffset":152,"BitStart":0,"Units":"Cos Phi","Resolution":"0.01","Signed":false}]},{"PGN":127505,"Id":"fluidLevel","Description":"Fluid Level","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":4,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"type","Name":"Type","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Fuel","value":"0"},{"name":"Water","value":"1"},{"name":"Gray water","value":"2"},{"name":"Live well","value":"3"},{"name":"Oil","value":"4"},{"name":"Black water","value":"5"}]},{"Order":3,"Id":"level","Name":"Level","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"%","Resolution":"0.004","Signed":false},{"Order":4,"Id":"capacity","Name":"Capacity","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"L","Resolution":"0.1","Signed":false},{"Order":5,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":127506,"Id":"dcDetailedStatus","Description":"DC Detailed Status","Type":"Single","Complete":true,"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"dcType","Name":"DC Type","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Battery","value":"0"},{"name":"Alternator","value":"1"},{"name":"Convertor","value":"2"},{"name":"Solar Cell","value":"3"},{"name":"Wind Generator","value":"4"}]},{"Order":4,"Id":"stateOfCharge","Name":"State of Charge","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"stateOfHealth","Name":"State of Health","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"timeRemaining","Name":"Time Remaining","BitLength":16,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"rippleVoltage","Name":"Ripple Voltage","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"V","Resolution":"0.01","Signed":false}]},{"PGN":127507,"Id":"chargerStatus","Description":"Charger Status","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"batteryInstance","Name":"Battery Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"operatingState","Name":"Operating State","BitLength":4,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not charging","value":"0"},{"name":"Bulk","value":"1"},{"name":"Absorption","value":"2"},{"name":"Overcharge","value":"3"},{"name":"Equalise","value":"4"},{"name":"Float","value":"5"},{"name":"No Float","value":"6"},{"name":"Constant VI","value":"7"},{"name":"Disabled","value":"8"},{"name":"Fault","value":"9"}]},{"Order":4,"Id":"chargeMode","Name":"Charge Mode","BitLength":4,"BitOffset":20,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Standalone mode","value":"0"},{"name":"Primary mode","value":"1"},{"name":"Secondary mode","value":"2"},{"name":"Echo mode","value":"3"}]},{"Order":5,"Id":"operatingState","Name":"Operating State","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":6,"Id":"equalizationPending","Name":"Equalization Pending","BitLength":2,"BitOffset":26,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"}]},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":28,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":8,"Id":"equalizationTimeRemaining","Name":"Equalization Time Remaining","BitLength":16,"BitOffset":32,"BitStart":0,"Signed":false}]},{"PGN":127508,"Id":"batteryStatus","Description":"Battery Status","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"voltage","Name":"Voltage","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"V","Resolution":"0.01","Signed":true},{"Order":3,"Id":"current","Name":"Current","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":true},{"Order":4,"Id":"temperature","Name":"Temperature","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":5,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false}]},{"PGN":127509,"Id":"inverterStatus","Description":"Inverter Status","Type":"Single","Complete":true,"Length":4,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"acInstance","Name":"AC Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"dcInstance","Name":"DC Instance","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"operatingState","Name":"Operating State","BitLength":4,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Standby","value":"0"},{"name":"On","value":"1"}]},{"Order":5,"Id":"inverter","Name":"Inverter","BitLength":2,"BitOffset":28,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Standby","value":"0"},{"name":"On","value":"1"}]}]},{"PGN":127510,"Id":"chargerConfigurationStatus","Description":"Charger Configuration Status","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":13,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"batteryInstance","Name":"Battery Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"chargerEnableDisable","Name":"Charger Enable/Disable","BitLength":2,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":6,"BitOffset":18,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":5,"Id":"chargeCurrentLimit","Name":"Charge Current Limit","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":6,"Id":"chargingAlgorithm","Name":"Charging Algorithm","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"chargerMode","Name":"Charger Mode","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"estimatedTemperature","Name":"Estimated Temperature","Description":"When no sensor present","BitLength":16,"BitOffset":56,"BitStart":0,"Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":9,"Id":"equalizeOneTimeEnableDisable","Name":"Equalize One Time Enable/Disable","BitLength":4,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":10,"Id":"overChargeEnableDisable","Name":"Over Charge Enable/Disable","BitLength":4,"BitOffset":76,"BitStart":4,"Signed":false},{"Order":11,"Id":"equalizeTime","Name":"Equalize Time","BitLength":16,"BitOffset":80,"BitStart":0,"Signed":false}]},{"PGN":127511,"Id":"inverterConfigurationStatus","Description":"Inverter Configuration Status","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"acInstance","Name":"AC Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"dcInstance","Name":"DC Instance","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"inverterEnableDisable","Name":"Inverter Enable/Disable","BitLength":2,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"inverterMode","Name":"Inverter Mode","BitLength":8,"BitOffset":26,"BitStart":2,"Signed":false},{"Order":6,"Id":"loadSenseEnableDisable","Name":"Load Sense Enable/Disable","BitLength":8,"BitOffset":34,"BitStart":2,"Signed":false},{"Order":7,"Id":"loadSensePowerThreshold","Name":"Load Sense Power Threshold","BitLength":8,"BitOffset":42,"BitStart":2,"Signed":false},{"Order":8,"Id":"loadSenseInterval","Name":"Load Sense Interval","BitLength":8,"BitOffset":50,"BitStart":2,"Signed":false}]},{"PGN":127512,"Id":"agsConfigurationStatus","Description":"AGS Configuration Status","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"generatorInstance","Name":"Generator Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"agsMode","Name":"AGS Mode","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false}]},{"PGN":127513,"Id":"batteryConfigurationStatus","Description":"Battery Configuration Status","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":10,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"batteryType","Name":"Battery Type","BitLength":4,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Flooded","value":"0"},{"name":"Gel","value":"1"},{"name":"AGM","value":"2"}]},{"Order":3,"Id":"supportsEqualization","Name":"Supports Equalization","BitLength":2,"BitOffset":12,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not Supported","value":"0"},{"name":"Supported","value":"1"}]},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"nominalVoltage","Name":"Nominal Voltage","BitLength":4,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"6V","value":"0"},{"name":"12V","value":"1"},{"name":"24V","value":"2"},{"name":"32V","value":"3"},{"name":"36V","value":"4"},{"name":"42V","value":"5"},{"name":"48V","value":"6"}]},{"Order":6,"Id":"chemistry","Name":"Chemistry","BitLength":4,"BitOffset":20,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"LeadAcid","value":"0"},{"name":"Li","value":"1"},{"name":"Nicad","value":"2"},{"name":"Zno","value":"3"},{"name":"NiMH","value":"4"}]},{"Order":7,"Id":"capacity","Name":"Capacity","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"C","Signed":false},{"Order":8,"Id":"temperatureCoefficient","Name":"Temperature Coefficient","BitLength":8,"BitOffset":40,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"peukertExponent","Name":"Peukert Exponent","Description":"Possibly in Excess-1 notation","BitLength":8,"BitOffset":48,"BitStart":0,"Resolution":"0.002","Signed":false},{"Order":10,"Id":"chargeEfficiencyFactor","Name":"Charge Efficiency Factor","BitLength":8,"BitOffset":56,"BitStart":0,"Units":"%","Signed":false}]},{"PGN":127514,"Id":"agsStatus","Description":"AGS Status","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"generatorInstance","Name":"Generator Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"agsOperatingState","Name":"AGS Operating State","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"generatorState","Name":"Generator State","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"generatorOnReason","Name":"Generator On Reason","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"generatorOffReason","Name":"Generator Off Reason","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false}]},{"PGN":127744,"Id":"acPowerCurrentPhaseA","Description":"AC Power / Current - Phase A","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"connectionNumber","Name":"Connection Number","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":4,"Id":"power","Name":"Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"W","Signed":true}]},{"PGN":127745,"Id":"acPowerCurrentPhaseB","Description":"AC Power / Current - Phase B","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"connectionNumber","Name":"Connection Number","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":4,"Id":"power","Name":"Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"W","Signed":true}]},{"PGN":127746,"Id":"acPowerCurrentPhaseC","Description":"AC Power / Current - Phase C","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"connectionNumber","Name":"Connection Number","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"acRmsCurrent","Name":"AC RMS Current","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"A","Resolution":"0.1","Signed":false},{"Order":4,"Id":"power","Name":"Power","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"W","Signed":true}]},{"PGN":127750,"Id":"converterStatus","Description":"Converter Status","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":2,"Id":"connectionNumber","Name":"Connection Number","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"operatingState","Name":"Operating State","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"Low Power Mode","value":"1"},{"name":"Fault","value":"2"},{"name":"Bulk","value":"3"},{"name":"Absorption","value":"4"},{"name":"Float","value":"5"},{"name":"Storage","value":"6"},{"name":"Equalize","value":"7"},{"name":"Pass thru","value":"8"},{"name":"Inverting","value":"9"},{"name":"Assisting","value":"10"}]},{"Order":4,"Id":"temperatureState","Name":"Temperature State","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Ok","value":"0"},{"name":"Warning","value":"1"},{"name":"Over Temperature","value":"2"},{"name":"Not Available","value":"3"}]},{"Order":5,"Id":"overloadState","Name":"Overload State","BitLength":2,"BitOffset":26,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Ok","value":"0"},{"name":"Warning","value":"1"},{"name":"Overload","value":"2"},{"name":"Not Available","value":"3"}]},{"Order":6,"Id":"lowDcVoltageState","Name":"Low DC Voltage State","BitLength":2,"BitOffset":28,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Ok","value":"0"},{"name":"Warning","value":"1"},{"name":"DC voltage too low","value":"2"},{"name":"Not Available","value":"3"}]},{"Order":7,"Id":"rippleState","Name":"Ripple State","BitLength":2,"BitOffset":30,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Ok","value":"0"},{"name":"Warning","value":"1"},{"name":"Ripple Too High","value":"2"},{"name":"Not Available","value":"3"}]},{"Order":8,"Id":"reserved","Name":"Reserved","BitLength":32,"BitOffset":32,"BitStart":0,"Resolution":0,"Signed":false}]},{"PGN":127751,"Id":"dcVoltageCurrent","Description":"DC Voltage/Current","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":2,"Id":"connectionNumber","Name":"Connection Number","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"dcVoltage","Name":"DC Voltage","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"V","Resolution":"0.1","Signed":false},{"Order":4,"Id":"dcCurrent","Name":"DC Current","BitLength":24,"BitOffset":32,"BitStart":0,"Units":"A","Resolution":"0.01","Signed":true},{"Order":5,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Resolution":0,"Signed":false}]},{"PGN":128000,"Id":"leewayAngle","Description":"Leeway Angle","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"leewayAngle","Name":"Leeway Angle","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":3,"Id":"reserved","Name":"Reserved","BitLength":40,"BitOffset":24,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":128259,"Id":"speed","Description":"Speed","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"speedWaterReferenced","Name":"Speed Water Referenced","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":3,"Id":"speedGroundReferenced","Name":"Speed Ground Referenced","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":4,"Id":"speedWaterReferencedType","Name":"Speed Water Referenced Type","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Paddle wheel","value":"0"},{"name":"Pitot tube","value":"1"},{"name":"Doppler","value":"2"},{"name":"Correlation (ultra sound)","value":"3"},{"name":"Electro Magnetic","value":"4"}]},{"Order":5,"Id":"speedDirection","Name":"Speed Direction","BitLength":4,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":12,"BitOffset":52,"BitStart":4,"Type":"Binary data","Signed":false}]},{"PGN":128267,"Id":"waterDepth","Description":"Water Depth","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"depth","Name":"Depth","Description":"Depth below transducer","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":3,"Id":"offset","Name":"Offset","Description":"Distance between transducer and surface (positive) or keel (negative)","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"m","Resolution":"0.001","Signed":true},{"Order":4,"Id":"range","Name":"Range","Description":"Max measurement range","BitLength":8,"BitOffset":56,"BitStart":0,"Units":"m","Resolution":10,"Signed":false}]},{"PGN":128275,"Id":"distanceLog","Description":"Distance Log","Type":"Fast","Complete":true,"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"date","Name":"Date","Description":"Timestamp of last reset in Days since January 1, 1970","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":2,"Id":"time","Name":"Time","Description":"Timestamp of last reset Seconds since midnight","BitLength":32,"BitOffset":16,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":3,"Id":"log","Name":"Log","Description":"Total cumulative distance","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"m","Signed":false},{"Order":4,"Id":"tripLog","Name":"Trip Log","Description":"Distance since last reset","BitLength":32,"BitOffset":80,"BitStart":0,"Units":"m","Signed":false}]},{"PGN":128520,"Id":"trackedTargetData","Description":"Tracked Target Data","Type":"Fast","Complete":false,"Missing":["SampleData"],"Length":27,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"targetId","Name":"Target ID #","Description":"Number of route, waypoint, event, mark, etc.","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"trackStatus","Name":"Track Status","BitLength":2,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Cancelled","value":"0"},{"name":"Acquiring","value":"1"},{"name":"Tracking","value":"2"},{"name":"Lost","value":"3"}]},{"Order":4,"Id":"reportedTarget","Name":"Reported Target","BitLength":1,"BitOffset":18,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":5,"Id":"targetAcquisition","Name":"Target Acquisition","BitLength":1,"BitOffset":19,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Manual","value":"0"},{"name":"Automatic","value":"1"}]},{"Order":6,"Id":"bearingReference","Name":"Bearing Reference","BitLength":2,"BitOffset":20,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":7,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":8,"Id":"bearing","Name":"Bearing","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":9,"Id":"distance","Name":"Distance","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"m","Resolution":"0.001","Signed":false},{"Order":10,"Id":"course","Name":"Course","BitLength":16,"BitOffset":72,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":11,"Id":"speed","Name":"Speed","BitLength":16,"BitOffset":88,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":12,"Id":"cpa","Name":"CPA","BitLength":32,"BitOffset":104,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":13,"Id":"tcpa","Name":"TCPA","Description":"negative = time elapsed since event, positive = time to go","BitLength":32,"BitOffset":136,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false},{"Order":14,"Id":"utcOfFix","Name":"UTC of Fix","Description":"Seconds since midnight","BitLength":32,"BitOffset":168,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":15,"Id":"name","Name":"Name","BitLength":2040,"BitOffset":200,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":129025,"Id":"positionRapidUpdate","Description":"Position, Rapid Update","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":2,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true}]},{"PGN":129026,"Id":"cogSogRapidUpdate","Description":"COG & SOG, Rapid Update","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"cogReference","Name":"COG Reference","BitLength":2,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":6,"BitOffset":10,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":4,"Id":"cog","Name":"COG","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"sog","Name":"SOG","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":129027,"Id":"positionDeltaRapidUpdate","Description":"Position Delta, Rapid Update","Type":"Single","Complete":false,"Missing":["SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"timeDelta","Name":"Time Delta","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"latitudeDelta","Name":"Latitude Delta","BitLength":16,"BitOffset":24,"BitStart":0,"Signed":true},{"Order":4,"Id":"longitudeDelta","Name":"Longitude Delta","BitLength":16,"BitOffset":40,"BitStart":0,"Signed":true}]},{"PGN":129028,"Id":"altitudeDeltaRapidUpdate","Description":"Altitude Delta, Rapid Update","Type":"Single","Complete":false,"Missing":["SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"timeDelta","Name":"Time Delta","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":true},{"Order":3,"Id":"gnssQuality","Name":"GNSS Quality","BitLength":2,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":4,"Id":"direction","Name":"Direction","BitLength":2,"BitOffset":26,"BitStart":2,"Signed":false},{"Order":5,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":28,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":6,"Id":"courseOverGround","Name":"Course Over Ground","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":7,"Id":"altitudeDelta","Name":"Altitude Delta","BitLength":16,"BitOffset":64,"BitStart":0,"Signed":true}]},{"PGN":129029,"Id":"gnssPositionData","Description":"GNSS Position Data","Type":"Fast","Complete":true,"Length":51,"RepeatingFields":3,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"date","Name":"Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":3,"Id":"time","Name":"Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":4,"Id":"latitude","Name":"Latitude","BitLength":64,"BitOffset":56,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000000000000001","Signed":true},{"Order":5,"Id":"longitude","Name":"Longitude","BitLength":64,"BitOffset":120,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000000000000001","Signed":true},{"Order":6,"Id":"altitude","Name":"Altitude","Description":"Altitude referenced to WGS-84","BitLength":64,"BitOffset":184,"BitStart":0,"Units":"m","Resolution":0.000001,"Signed":true},{"Order":7,"Id":"gnssType","Name":"GNSS type","BitLength":4,"BitOffset":248,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"GPS","value":"0"},{"name":"GLONASS","value":"1"},{"name":"GPS+GLONASS","value":"2"},{"name":"GPS+SBAS/WAAS","value":"3"},{"name":"GPS+SBAS/WAAS+GLONASS","value":"4"},{"name":"Chayka","value":"5"},{"name":"integrated","value":"6"},{"name":"surveyed","value":"7"},{"name":"Galileo","value":"8"}]},{"Order":8,"Id":"method","Name":"Method","BitLength":4,"BitOffset":252,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"no GNSS","value":"0"},{"name":"GNSS fix","value":"1"},{"name":"DGNSS fix","value":"2"},{"name":"Precise GNSS","value":"3"},{"name":"RTK Fixed Integer","value":"4"},{"name":"RTK float","value":"5"},{"name":"Estimated (DR) mode","value":"6"},{"name":"Manual Input","value":"7"},{"name":"Simulate mode","value":"8"}]},{"Order":9,"Id":"integrity","Name":"Integrity","BitLength":2,"BitOffset":256,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No integrity checking","value":"0"},{"name":"Safe","value":"1"},{"name":"Caution","value":"2"}]},{"Order":10,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":6,"BitOffset":258,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":11,"Id":"numberOfSvs","Name":"Number of SVs","Description":"Number of satellites used in solution","BitLength":8,"BitOffset":264,"BitStart":0,"Signed":false},{"Order":12,"Id":"hdop","Name":"HDOP","Description":"Horizontal dilution of precision","BitLength":16,"BitOffset":272,"BitStart":0,"Resolution":"0.01","Signed":true},{"Order":13,"Id":"pdop","Name":"PDOP","Description":"Probable dilution of precision","BitLength":16,"BitOffset":288,"BitStart":0,"Resolution":"0.01","Signed":true},{"Order":14,"Id":"geoidalSeparation","Name":"Geoidal Separation","Description":"Geoidal Separation","BitLength":32,"BitOffset":304,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":true},{"Order":15,"Id":"referenceStations","Name":"Reference Stations","Description":"Number of reference stations","BitLength":8,"BitOffset":336,"BitStart":0,"Signed":false},{"Order":16,"Id":"referenceStationType","Name":"Reference Station Type","BitLength":4,"BitOffset":344,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"GPS","value":"0"},{"name":"GLONASS","value":"1"},{"name":"GPS+GLONASS","value":"2"},{"name":"GPS+SBAS/WAAS","value":"3"},{"name":"GPS+SBAS/WAAS+GLONASS","value":"4"},{"name":"Chayka","value":"5"},{"name":"integrated","value":"6"},{"name":"surveyed","value":"7"},{"name":"Galileo","value":"8"}]},{"Order":17,"Id":"referenceStationId","Name":"Reference Station ID","BitLength":12,"BitOffset":348,"BitStart":4,"Units":null,"Signed":false},{"Order":18,"Id":"ageOfDgnssCorrections","Name":"Age of DGNSS Corrections","BitLength":16,"BitOffset":360,"BitStart":0,"Units":"s","Resolution":"0.01","Signed":false}]},{"PGN":129033,"Id":"timeDate","Description":"Time & Date","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"date","Name":"Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":2,"Id":"time","Name":"Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":16,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":3,"Id":"localOffset","Name":"Local Offset","Description":"Minutes","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"minutes","Type":"Integer","Resolution":1,"Signed":true}]},{"PGN":129038,"Id":"aisClassAPositionReport","Description":"AIS Class A Position Report","Type":"Fast","Complete":true,"Length":28,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":5,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":72,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"positionAccuracy","Name":"Position Accuracy","BitLength":1,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Low","value":"0"},{"name":"High","value":"1"}]},{"Order":7,"Id":"raim","Name":"RAIM","BitLength":1,"BitOffset":105,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"not in use","value":"0"},{"name":"in use","value":"1"}]},{"Order":8,"Id":"timeStamp","Name":"Time Stamp","Description":"0-59 = UTC second when the report was generated","BitLength":6,"BitOffset":106,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not available","value":"60"},{"name":"Manual input mode","value":"61"},{"name":"Dead reckoning mode","value":"62"},{"name":"Positioning system is inoperative","value":"63"}]},{"Order":9,"Id":"cog","Name":"COG","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"sog","Name":"SOG","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":11,"Id":"communicationState","Name":"Communication State","Description":"Information used by the TDMA slot allocation algorithm and synchronization information","BitLength":19,"BitOffset":144,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":12,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":163,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":13,"Id":"heading","Name":"Heading","Description":"True heading","BitLength":16,"BitOffset":168,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":14,"Id":"rateOfTurn","Name":"Rate of Turn","BitLength":16,"BitOffset":184,"BitStart":0,"Units":"rad/s","Resolution":0.00003125,"Signed":true},{"Order":15,"Id":"navStatus","Name":"Nav Status","BitLength":4,"BitOffset":200,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Under way using engine","value":"0"},{"name":"At anchor","value":"1"},{"name":"Not under command","value":"2"},{"name":"Restricted manoeuverability","value":"3"},{"name":"Constrained by her draught","value":"4"},{"name":"Moored","value":"5"},{"name":"Aground","value":"6"},{"name":"Engaged in Fishing","value":"7"},{"name":"Under way sailing","value":"8"},{"name":"Hazardous material - High Speed","value":"9"},{"name":"Hazardous material - Wing in Ground","value":"10"},{"name":"AIS-SART","value":"14"}]},{"Order":16,"Id":"specialManeuverIndicator","Name":"Special Maneuver Indicator","BitLength":2,"BitOffset":204,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not available","value":"0"},{"name":"Not engaged in special maneuver","value":"1"},{"name":"Engaged in special maneuver","value":"2"},{"name":"Reserverd","value":"3"}]},{"Order":17,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":206,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":18,"Id":"aisSpare","Name":"AIS Spare","BitLength":3,"BitOffset":208,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":19,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":5,"BitOffset":211,"BitStart":3,"Type":"Binary data","Signed":false},{"Order":20,"Id":"sequenceId","Name":"Sequence ID","BitLength":8,"BitOffset":216,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":129039,"Id":"aisClassBPositionReport","Description":"AIS Class B Position Report","Type":"Fast","Complete":true,"Length":26,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":5,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":72,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"positionAccuracy","Name":"Position Accuracy","BitLength":1,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Low","value":"0"},{"name":"High","value":"1"}]},{"Order":7,"Id":"raim","Name":"RAIM","BitLength":1,"BitOffset":105,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"not in use","value":"0"},{"name":"in use","value":"1"}]},{"Order":8,"Id":"timeStamp","Name":"Time Stamp","Description":"0-59 = UTC second when the report was generated","BitLength":6,"BitOffset":106,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not available","value":"60"},{"name":"Manual input mode","value":"61"},{"name":"Dead reckoning mode","value":"62"},{"name":"Positioning system is inoperative","value":"63"}]},{"Order":9,"Id":"cog","Name":"COG","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"sog","Name":"SOG","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":11,"Id":"communicationState","Name":"Communication State","Description":"Information used by the TDMA slot allocation algorithm and synchronization information","BitLength":19,"BitOffset":144,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":12,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":163,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":13,"Id":"heading","Name":"Heading","Description":"True heading","BitLength":16,"BitOffset":168,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":14,"Id":"regionalApplication","Name":"Regional Application","BitLength":8,"BitOffset":184,"BitStart":0,"Signed":false},{"Order":15,"Id":"regionalApplication","Name":"Regional Application","BitLength":2,"BitOffset":192,"BitStart":0,"Signed":false},{"Order":16,"Id":"unitType","Name":"Unit type","BitLength":1,"BitOffset":194,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"SOTDMA","value":"0"},{"name":"CS","value":"1"}]},{"Order":17,"Id":"integratedDisplay","Name":"Integrated Display","Description":"Whether the unit can show messages 12 and 14","BitLength":1,"BitOffset":195,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":18,"Id":"dsc","Name":"DSC","BitLength":1,"BitOffset":196,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":19,"Id":"band","Name":"Band","BitLength":1,"BitOffset":197,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"top 525 kHz of marine band","value":"0"},{"name":"entire marine band","value":"1"}]},{"Order":20,"Id":"canHandleMsg22","Name":"Can handle Msg 22","Description":"Whether device supports message 22","BitLength":1,"BitOffset":198,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":21,"Id":"aisMode","Name":"AIS mode","BitLength":1,"BitOffset":199,"BitStart":7,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Autonomous","value":"0"},{"name":"Assigned","value":"1"}]},{"Order":22,"Id":"aisCommunicationState","Name":"AIS communication state","BitLength":1,"BitOffset":200,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"SOTDMA","value":"0"},{"name":"ITDMA","value":"1"}]}]},{"PGN":129040,"Id":"aisClassBExtendedPositionReport","Description":"AIS Class B Extended Position Report","Type":"Fast","Complete":true,"Length":33,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":5,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":72,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"positionAccuracy","Name":"Position Accuracy","BitLength":1,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Low","value":"0"},{"name":"High","value":"1"}]},{"Order":7,"Id":"aisRaimFlag","Name":"AIS RAIM flag","BitLength":1,"BitOffset":105,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"not in use","value":"0"},{"name":"in use","value":"1"}]},{"Order":8,"Id":"timeStamp","Name":"Time Stamp","Description":"0-59 = UTC second when the report was generated","BitLength":6,"BitOffset":106,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not available","value":"60"},{"name":"Manual input mode","value":"61"},{"name":"Dead reckoning mode","value":"62"},{"name":"Positioning system is inoperative","value":"63"}]},{"Order":9,"Id":"cog","Name":"COG","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"sog","Name":"SOG","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":11,"Id":"regionalApplication","Name":"Regional Application","BitLength":8,"BitOffset":144,"BitStart":0,"Signed":false},{"Order":12,"Id":"regionalApplication","Name":"Regional Application","BitLength":4,"BitOffset":152,"BitStart":0,"Signed":false},{"Order":13,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":4,"BitOffset":156,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":14,"Id":"typeOfShip","Name":"Type of ship","BitLength":8,"BitOffset":160,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"unavailable","value":"0"},{"name":"Wing In Ground","value":"20"},{"name":"Wing In Ground (no other information)","value":"29"},{"name":"Fishing","value":"30"},{"name":"Towing","value":"31"},{"name":"Towing exceeds 200m or wider than 25m","value":"32"},{"name":"Engaged in dredging or underwater operations","value":"33"},{"name":"Engaged in diving operations","value":"34"},{"name":"Engaged in military operations","value":"35"},{"name":"Sailing","value":"36"},{"name":"Pleasure","value":"37"},{"name":"High speed craft","value":"40"},{"name":"High speed craft carrying dangerous goods","value":"41"},{"name":"High speed craft hazard cat B","value":"42"},{"name":"High speed craft hazard cat C","value":"43"},{"name":"High speed craft hazard cat D","value":"44"},{"name":"High speed craft (no additional information)","value":"49"},{"name":"Pilot vessel","value":"50"},{"name":"SAR","value":"51"},{"name":"Tug","value":"52"},{"name":"Port tender","value":"53"},{"name":"Anti-pollution","value":"54"},{"name":"Law enforcement","value":"55"},{"name":"Spare","value":"56"},{"name":"Spare #2","value":"57"},{"name":"Medical","value":"58"},{"name":"RR Resolution No.18","value":"59"},{"name":"Passenger ship","value":"60"},{"name":"Passenger ship (no additional information)","value":"69"},{"name":"Cargo ship","value":"70"},{"name":"Cargo ship carrying dangerous goods","value":"71"},{"name":"Cargo ship hazard cat B","value":"72"},{"name":"Cargo ship hazard cat C","value":"73"},{"name":"Cargo ship hazard cat D","value":"74"},{"name":"Cargo ship (no additional information)","value":"79"},{"name":"Tanker","value":"80"},{"name":"Tanker carrying dangerous goods","value":"81"},{"name":"Tanker hazard cat B","value":"82"},{"name":"Tanker hazard cat C","value":"83"},{"name":"Tanker hazard cat D","value":"84"},{"name":"Tanker (no additional information)","value":"89"},{"name":"Other","value":"90"},{"name":"Other carrying dangerous goods","value":"91"},{"name":"Other hazard cat B","value":"92"},{"name":"Other hazard cat C","value":"93"},{"name":"Other hazard cat D","value":"94"},{"name":"Other (no additional information)","value":"99"}]},{"Order":15,"Id":"trueHeading","Name":"True Heading","BitLength":16,"BitOffset":168,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":16,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":184,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":17,"Id":"gnssType","Name":"GNSS type","BitLength":4,"BitOffset":188,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"undefined","value":"0"},{"name":"GPS","value":"1"},{"name":"GLONASS","value":"2"},{"name":"GPS+GLONASS","value":"3"},{"name":"Loran-C","value":"4"},{"name":"Chayka","value":"5"},{"name":"integrated","value":"6"},{"name":"surveyed","value":"7"},{"name":"Galileo","value":"8"}]},{"Order":18,"Id":"length","Name":"Length","BitLength":16,"BitOffset":192,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":19,"Id":"beam","Name":"Beam","BitLength":16,"BitOffset":208,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":20,"Id":"positionReferenceFromStarboard","Name":"Position reference from Starboard","BitLength":16,"BitOffset":224,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":21,"Id":"positionReferenceFromBow","Name":"Position reference from Bow","BitLength":16,"BitOffset":240,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":22,"Id":"name","Name":"Name","BitLength":160,"BitOffset":256,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":23,"Id":"dte","Name":"DTE","BitLength":1,"BitOffset":416,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Available","value":"0"},{"name":"Not available","value":"1"}]},{"Order":24,"Id":"aisMode","Name":"AIS mode","BitLength":1,"BitOffset":417,"BitStart":1,"Signed":false},{"Order":25,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":418,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":26,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":422,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]}]},{"PGN":129041,"Id":"aisAidsToNavigationAtonReport","Description":"AIS Aids to Navigation (AtoN) Report","Type":"Fast","Complete":true,"Length":60,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":5,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":72,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"positionAccuracy","Name":"Position Accuracy","BitLength":1,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Low","value":"0"},{"name":"High","value":"1"}]},{"Order":7,"Id":"aisRaimFlag","Name":"AIS RAIM Flag","BitLength":1,"BitOffset":105,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"not in use","value":"0"},{"name":"in use","value":"1"}]},{"Order":8,"Id":"timeStamp","Name":"Time Stamp","Description":"0-59 = UTC second when the report was generated","BitLength":6,"BitOffset":106,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not available","value":"60"},{"name":"Manual input mode","value":"61"},{"name":"Dead reckoning mode","value":"62"},{"name":"Positioning system is inoperative","value":"63"}]},{"Order":9,"Id":"lengthDiameter","Name":"Length/Diameter","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":10,"Id":"beamDiameter","Name":"Beam/Diameter","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":11,"Id":"positionReferenceFromStarboardEdge","Name":"Position Reference from Starboard Edge","BitLength":16,"BitOffset":144,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":12,"Id":"positionReferenceFromTrueNorthFacingEdge","Name":"Position Reference from True North Facing Edge","BitLength":16,"BitOffset":160,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":13,"Id":"atonType","Name":"AtoN Type","BitLength":5,"BitOffset":176,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Default: Type of AtoN not specified","value":"0"},{"name":"Referece point","value":"1"},{"name":"RACON","value":"2"},{"name":"Fixed structure off-shore","value":"3"},{"name":"Reserved for future use","value":"4"},{"name":"Fixed light: without sectors","value":"5"},{"name":"Fixed light: with sectors","value":"6"},{"name":"Fixed leading light front","value":"7"},{"name":"Fixed leading light rear","value":"8"},{"name":"Fixed beacon: cardinal N","value":"9"},{"name":"Fixed beacon: cardinal E","value":"10"},{"name":"Fixed beacon: cardinal S","value":"11"},{"name":"Fixed beacon: cardinal W","value":"12"},{"name":"Fixed beacon: port hand","value":"13"},{"name":"Fixed beacon: starboard hand","value":"14"},{"name":"Fixed beacon: preferred channel port hand","value":"15"},{"name":"Fixed beacon: preferred channel starboard hand","value":"16"},{"name":"Fixed beacon: isolated danger","value":"17"},{"name":"Fixed beacon: safe water","value":"18"},{"name":"Fixed beacon: special mark","value":"19"},{"name":"Floating AtoN: cardinal N","value":"20"},{"name":"Floating AtoN: cardinal E","value":"21"},{"name":"Floating AtoN: cardinal S","value":"22"},{"name":"Floating AtoN: cardinal W","value":"23"},{"name":"Floating AtoN: port hand mark","value":"24"},{"name":"Floating AtoN: starboard hand mark","value":"25"},{"name":"Floating AtoN: preferred channel port hand","value":"26"},{"name":"Floating AtoN: preferred channel starboard hand","value":"27"},{"name":"Floating AtoN: isolated danger","value":"28"},{"name":"Floating AtoN: safe water","value":"29"},{"name":"Floating AtoN: special mark","value":"30"},{"name":"Floating AtoN: light vessel/LANBY/rigs","value":"31"}]},{"Order":14,"Id":"offPositionIndicator","Name":"Off Position Indicator","BitLength":1,"BitOffset":181,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":15,"Id":"virtualAtonFlag","Name":"Virtual AtoN Flag","BitLength":1,"BitOffset":182,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":16,"Id":"assignedModeFlag","Name":"Assigned Mode Flag","BitLength":1,"BitOffset":183,"BitStart":7,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Autonomous and continuous","value":"0"},{"name":"Assigned mode","value":"1"}]},{"Order":17,"Id":"aisSpare","Name":"AIS Spare","BitLength":1,"BitOffset":184,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":18,"Id":"positionFixingDeviceType","Name":"Position Fixing Device Type","BitLength":4,"BitOffset":185,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Default: undefined","value":"0"},{"name":"GPS","value":"1"},{"name":"GLONASS","value":"2"},{"name":"Combined GPS/GLONASS","value":"3"},{"name":"Loran-C","value":"4"},{"name":"Chayka","value":"5"},{"name":"Integrated navigation system","value":"6"},{"name":"Surveyed","value":"7"},{"name":"Galileo","value":"8"},{"name":"Internal GNSS","value":"15"}]},{"Order":19,"Id":"reserved","Name":"Reserved","BitLength":3,"BitOffset":189,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":20,"Id":"atonStatus","Name":"AtoN Status","Description":"00000000 = default","BitLength":8,"BitOffset":192,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":21,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":200,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":22,"Id":"reserved","Name":"Reserved","BitLength":3,"BitOffset":205,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":23,"Id":"atonName","Name":"AtoN Name","BitLength":272,"BitOffset":208,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":129044,"Id":"datum","Description":"Datum","Type":"Fast","Complete":true,"Length":24,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"localDatum","Name":"Local Datum","Description":"defined in IHO Publication S-60, Appendices B and C. First three chars are datum ID as per IHO tables. Fourth char is local datum subdivision code.","BitLength":32,"BitOffset":0,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":2,"Id":"deltaLatitude","Name":"Delta Latitude","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":3,"Id":"deltaLongitude","Name":"Delta Longitude","BitLength":32,"BitOffset":64,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":4,"Id":"deltaAltitude","Name":"Delta Altitude","BitLength":32,"BitOffset":96,"BitStart":0,"Units":"m","Resolution":0.000001,"Signed":true},{"Order":5,"Id":"referenceDatum","Name":"Reference Datum","Description":"defined in IHO Publication S-60, Appendices B and C. First three chars are datum ID as per IHO tables. Fourth char is local datum subdivision code.","BitLength":32,"BitOffset":128,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":129045,"Id":"userDatum","Description":"User Datum","Type":"Fast","Complete":true,"Length":37,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"deltaX","Name":"Delta X","Description":"Delta shift in X axis from WGS 84","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":true},{"Order":2,"Id":"deltaY","Name":"Delta Y","Description":"Delta shift in Y axis from WGS 84","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":true},{"Order":3,"Id":"deltaZ","Name":"Delta Z","Description":"Delta shift in Z axis from WGS 84","BitLength":32,"BitOffset":64,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":true},{"Order":4,"Id":"rotationInX","Name":"Rotation in X","Description":"Rotational shift in X axis from WGS 84. Rotations presented use the geodetic sign convention. When looking along the positive axis towards the origin, counter-clockwise rotations are positive.","BitLength":32,"BitOffset":96,"BitStart":0,"Type":"IEEE Float","Signed":true},{"Order":5,"Id":"rotationInY","Name":"Rotation in Y","Description":"Rotational shift in Y axis from WGS 84. Rotations presented use the geodetic sign convention. When looking along the positive axis towards the origin, counter-clockwise rotations are positive.","BitLength":32,"BitOffset":128,"BitStart":0,"Type":"IEEE Float","Signed":true},{"Order":6,"Id":"rotationInZ","Name":"Rotation in Z","Description":"Rotational shift in Z axis from WGS 84. Rotations presented use the geodetic sign convention. When looking along the positive axis towards the origin, counter-clockwise rotations are positive.","BitLength":32,"BitOffset":160,"BitStart":0,"Type":"IEEE Float","Signed":true},{"Order":7,"Id":"scale","Name":"Scale","Description":"Scale factor expressed in parts-per-million","BitLength":32,"BitOffset":192,"BitStart":0,"Units":"ppm","Type":"IEEE Float","Signed":true},{"Order":8,"Id":"ellipsoidSemiMajorAxis","Name":"Ellipsoid Semi-major Axis","Description":"Semi-major axis (a) of the User Datum ellipsoid","BitLength":32,"BitOffset":224,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":true},{"Order":9,"Id":"ellipsoidFlatteningInverse","Name":"Ellipsoid Flattening Inverse","Description":"Flattening (1/f) of the User Datum ellipsoid","BitLength":32,"BitOffset":256,"BitStart":0,"Type":"IEEE Float","Signed":true},{"Order":10,"Id":"datumName","Name":"Datum Name","Description":"4 character code from IHO Publication S-60,Appendices B and C. First three chars are datum ID as per IHO tables. Fourth char is local datum subdivision code.","BitLength":32,"BitOffset":288,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":129283,"Id":"crossTrackError","Description":"Cross Track Error","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"xteMode","Name":"XTE mode","BitLength":4,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Autonomous","value":"0"},{"name":"Differential enhanced","value":"1"},{"name":"Estimated","value":"2"},{"name":"Simulator","value":"3"},{"name":"Manual","value":"4"}]},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":12,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":4,"Id":"navigationTerminated","Name":"Navigation Terminated","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":5,"Id":"xte","Name":"XTE","BitLength":32,"BitOffset":16,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":true},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":129284,"Id":"navigationData","Description":"Navigation Data","Type":"Fast","Complete":true,"Length":34,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"distanceToWaypoint","Name":"Distance to Waypoint","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":3,"Id":"courseBearingReference","Name":"Course/Bearing reference","BitLength":2,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":4,"Id":"perpendicularCrossed","Name":"Perpendicular Crossed","BitLength":2,"BitOffset":42,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":5,"Id":"arrivalCircleEntered","Name":"Arrival Circle Entered","BitLength":2,"BitOffset":44,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":6,"Id":"calculationType","Name":"Calculation Type","BitLength":2,"BitOffset":46,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Great Circle","value":"0"},{"name":"Rhumb Line","value":"1"}]},{"Order":7,"Id":"etaTime","Name":"ETA Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":8,"Id":"etaDate","Name":"ETA Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":9,"Id":"bearingOriginToDestinationWaypoint","Name":"Bearing, Origin to Destination Waypoint","BitLength":16,"BitOffset":96,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"bearingPositionToDestinationWaypoint","Name":"Bearing, Position to Destination Waypoint","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":11,"Id":"originWaypointNumber","Name":"Origin Waypoint Number","BitLength":32,"BitOffset":128,"BitStart":0,"Signed":false},{"Order":12,"Id":"destinationWaypointNumber","Name":"Destination Waypoint Number","BitLength":32,"BitOffset":160,"BitStart":0,"Signed":false},{"Order":13,"Id":"destinationLatitude","Name":"Destination Latitude","BitLength":32,"BitOffset":192,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":14,"Id":"destinationLongitude","Name":"Destination Longitude","BitLength":32,"BitOffset":224,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":15,"Id":"waypointClosingVelocity","Name":"Waypoint Closing Velocity","BitLength":16,"BitOffset":256,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":true}]},{"PGN":129285,"Id":"navigationRouteWpInformation","Description":"Navigation - Route/WP Information","Type":"Fast","Complete":true,"Length":233,"RepeatingFields":4,"Fields":[{"Order":1,"Id":"startRps","Name":"Start RPS#","BitLength":16,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":3,"Id":"databaseId","Name":"Database ID","BitLength":16,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":4,"Id":"routeId","Name":"Route ID","BitLength":16,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":5,"Id":"navigationDirectionInRoute","Name":"Navigation direction in route","BitLength":2,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":6,"Id":"supplementaryRouteWpDataAvailable","Name":"Supplementary Route/WP data available","BitLength":2,"BitOffset":66,"BitStart":2,"Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":68,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":8,"Id":"routeName","Name":"Route Name","BitLength":2040,"BitOffset":72,"BitStart":0,"Type":"String with start/stop byte","Signed":false},{"Order":9,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":8,"BitOffset":2112,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":10,"Id":"wpId","Name":"WP ID","BitLength":16,"BitOffset":2120,"BitStart":0,"Signed":false},{"Order":11,"Id":"wpName","Name":"WP Name","BitLength":2040,"BitOffset":2136,"BitStart":0,"Type":"String with start/stop byte","Signed":false},{"Order":12,"Id":"wpLatitude","Name":"WP Latitude","BitLength":32,"BitOffset":4176,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":13,"Id":"wpLongitude","Name":"WP Longitude","BitLength":32,"BitOffset":4208,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true}]},{"PGN":129291,"Id":"setDriftRapidUpdate","Description":"Set & Drift, Rapid Update","Type":"Single","Complete":false,"Missing":["SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"setReference","Name":"Set Reference","BitLength":2,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":6,"BitOffset":10,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":4,"Id":"set","Name":"Set","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"drift","Name":"Drift","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false}]},{"PGN":129301,"Id":"navigationRouteTimeToFromMark","Description":"Navigation - Route / Time to+from Mark","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":10,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"timeToMark","Name":"Time to mark","Description":"negative = elapsed since event, positive = time to go","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":true},{"Order":3,"Id":"markType","Name":"Mark Type","BitLength":4,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Collision","value":"0"},{"name":"Turning point","value":"1"},{"name":"Reference","value":"2"},{"name":"Wheelover","value":"3"},{"name":"Waypoint","value":"4"}]},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":44,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":5,"Id":"markId","Name":"Mark ID","BitLength":32,"BitOffset":48,"BitStart":0,"Signed":false}]},{"PGN":129302,"Id":"bearingAndDistanceBetweenTwoMarks","Description":"Bearing and Distance between two Marks","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"bearingReference","Name":"Bearing Reference","BitLength":4,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false},{"Order":3,"Id":"calculationType","Name":"Calculation Type","BitLength":2,"BitOffset":12,"BitStart":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"bearingOriginToDestination","Name":"Bearing, Origin to Destination","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":6,"Id":"distance","Name":"Distance","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":7,"Id":"originMarkType","Name":"Origin Mark Type","BitLength":4,"BitOffset":64,"BitStart":0,"Type":"Lookup table","Signed":false},{"Order":8,"Id":"destinationMarkType","Name":"Destination Mark Type","BitLength":4,"BitOffset":68,"BitStart":4,"Type":"Lookup table","Signed":false},{"Order":9,"Id":"originMarkId","Name":"Origin Mark ID","BitLength":32,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":10,"Id":"destinationMarkId","Name":"Destination Mark ID","BitLength":32,"BitOffset":104,"BitStart":0,"Signed":false}]},{"PGN":129538,"Id":"gnssControlStatus","Description":"GNSS Control Status","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":13,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"svElevationMask","Name":"SV Elevation Mask","Description":"Will not use SV below this elevation","BitLength":16,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"pdopMask","Name":"PDOP Mask","Description":"Will not report position above this PDOP","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":"0.01","Signed":false},{"Order":3,"Id":"pdopSwitch","Name":"PDOP Switch","Description":"Will report 2D position above this PDOP","BitLength":16,"BitOffset":32,"BitStart":0,"Resolution":"0.01","Signed":false},{"Order":4,"Id":"snrMask","Name":"SNR Mask","Description":"Will not use SV below this SNR","BitLength":16,"BitOffset":48,"BitStart":0,"Resolution":"0.01","Signed":false},{"Order":5,"Id":"gnssModeDesired","Name":"GNSS Mode (desired)","BitLength":3,"BitOffset":64,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"1D","value":"0"},{"name":"2D","value":"1"},{"name":"3D","value":"2"},{"name":"Auto","value":"3"},{"name":"Reserved","value":"4"},{"name":"Reserved","value":"5"},{"name":"Error","value":"6"}]},{"Order":6,"Id":"dgnssModeDesired","Name":"DGNSS Mode (desired)","BitLength":3,"BitOffset":67,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"no SBAS","value":"0"},{"name":"SBAS","value":"1"},{"name":"SBAS","value":"3"}]},{"Order":7,"Id":"positionVelocityFilter","Name":"Position/Velocity Filter","BitLength":2,"BitOffset":70,"BitStart":6,"Signed":false},{"Order":8,"Id":"maxCorrectionAge","Name":"Max Correction Age","BitLength":16,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":9,"Id":"antennaAltitudeFor2dMode","Name":"Antenna Altitude for 2D Mode","BitLength":16,"BitOffset":88,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":10,"Id":"useAntennaAltitudeFor2dMode","Name":"Use Antenna Altitude for 2D Mode","BitLength":2,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"use last 3D height","value":"0"},{"name":"Use antenna altitude","value":"1"}]}]},{"PGN":129539,"Id":"gnssDops","Description":"GNSS DOPs","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"desiredMode","Name":"Desired Mode","BitLength":3,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"1D","value":"0"},{"name":"2D","value":"1"},{"name":"3D","value":"2"},{"name":"Auto","value":"3"}]},{"Order":3,"Id":"actualMode","Name":"Actual Mode","BitLength":3,"BitOffset":11,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"1D","value":"0"},{"name":"2D","value":"1"},{"name":"3D","value":"2"},{"name":"Auto","value":"3"}]},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"hdop","Name":"HDOP","Description":"Horizontal dilution of precision","BitLength":16,"BitOffset":16,"BitStart":0,"Resolution":"0.01","Signed":true},{"Order":6,"Id":"vdop","Name":"VDOP","Description":"Vertical dilution of precision","BitLength":16,"BitOffset":32,"BitStart":0,"Resolution":"0.01","Signed":true},{"Order":7,"Id":"tdop","Name":"TDOP","Description":"Time dilution of precision","BitLength":16,"BitOffset":48,"BitStart":0,"Resolution":"0.01","Signed":true}]},{"PGN":129540,"Id":"gnssSatsInView","Description":"GNSS Sats in View","Type":"Fast","Complete":true,"Length":233,"RepeatingFields":7,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"mode","Name":"Mode","BitLength":2,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Range residuals used to calculate position","value":"3"}]},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":6,"BitOffset":10,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":4,"Id":"satsInView","Name":"Sats in View","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"prn","Name":"PRN","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"elevation","Name":"Elevation","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":7,"Id":"azimuth","Name":"Azimuth","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":8,"Id":"snr","Name":"SNR","BitLength":16,"BitOffset":64,"BitStart":0,"Units":"dB","Resolution":"0.01","Signed":false},{"Order":9,"Id":"rangeResiduals","Name":"Range residuals","BitLength":32,"BitOffset":80,"BitStart":0,"Signed":true},{"Order":10,"Id":"status","Name":"Status","BitLength":4,"BitOffset":112,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not tracked","value":"0"},{"name":"Tracked","value":"1"},{"name":"Used","value":"2"},{"name":"Not tracked+Diff","value":"3"},{"name":"Tracked+Diff","value":"4"},{"name":"Used+Diff","value":"5"}]},{"Order":11,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":116,"BitStart":4,"Type":"Binary data","Signed":false}]},{"PGN":129541,"Id":"gpsAlmanacData","Description":"GPS Almanac Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"prn","Name":"PRN","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"gpsWeekNumber","Name":"GPS Week number","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"svHealthBits","Name":"SV Health Bits","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"eccentricity","Name":"Eccentricity","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"almanacReferenceTime","Name":"Almanac Reference Time","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"inclinationAngle","Name":"Inclination Angle","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"rightOfRightAscension","Name":"Right of Right Ascension","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"rootOfSemiMajorAxis","Name":"Root of Semi-major Axis","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":9,"Id":"argumentOfPerigee","Name":"Argument of Perigee","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":10,"Id":"longitudeOfAscensionNode","Name":"Longitude of Ascension Node","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":11,"Id":"meanAnomaly","Name":"Mean Anomaly","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":12,"Id":"clockParameter1","Name":"Clock Parameter 1","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":13,"Id":"clockParameter2","Name":"Clock Parameter 2","BitLength":8,"BitOffset":96,"BitStart":0,"Signed":false}]},{"PGN":129542,"Id":"gnssPseudorangeNoiseStatistics","Description":"GNSS Pseudorange Noise Statistics","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"rmsOfPositionUncertainty","Name":"RMS of Position Uncertainty","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"stdOfMajorAxis","Name":"STD of Major axis","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":4,"Id":"stdOfMinorAxis","Name":"STD of Minor axis","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"orientationOfMajorAxis","Name":"Orientation of Major axis","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"stdOfLatError","Name":"STD of Lat Error","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"stdOfLonError","Name":"STD of Lon Error","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":8,"Id":"stdOfAltError","Name":"STD of Alt Error","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false}]},{"PGN":129545,"Id":"gnssRaimOutput","Description":"GNSS RAIM Output","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"integrityFlag","Name":"Integrity flag","BitLength":4,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":12,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":4,"Id":"latitudeExpectedError","Name":"Latitude expected error","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"longitudeExpectedError","Name":"Longitude expected error","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"altitudeExpectedError","Name":"Altitude expected error","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"svIdOfMostLikelyFailedSat","Name":"SV ID of most likely failed sat","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"probabilityOfMissedDetection","Name":"Probability of missed detection","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"estimateOfPseudorangeBias","Name":"Estimate of pseudorange bias","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":10,"Id":"stdDeviationOfBias","Name":"Std Deviation of bias","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false}]},{"PGN":129546,"Id":"gnssRaimSettings","Description":"GNSS RAIM Settings","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"radialPositionErrorMaximumThreshold","Name":"Radial Position Error Maximum Threshold","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"probabilityOfFalseAlarm","Name":"Probability of False Alarm","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"probabilityOfMissedDetection","Name":"Probability of Missed Detection","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"pseudorangeResidualFilteringTimeConstant","Name":"Pseudorange Residual Filtering Time Constant","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false}]},{"PGN":129547,"Id":"gnssPseudorangeErrorStatistics","Description":"GNSS Pseudorange Error Statistics","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"rmsStdDevOfRangeInputs","Name":"RMS Std Dev of Range Inputs","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"stdDevOfMajorErrorEllipse","Name":"Std Dev of Major error ellipse","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":4,"Id":"stdDevOfMinorErrorEllipse","Name":"Std Dev of Minor error ellipse","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"orientationOfErrorEllipse","Name":"Orientation of error ellipse","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"stdDevLatError","Name":"Std Dev Lat Error","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"stdDevLonError","Name":"Std Dev Lon Error","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":8,"Id":"stdDevAltError","Name":"Std Dev Alt Error","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false}]},{"PGN":129549,"Id":"dgnssCorrections","Description":"DGNSS Corrections","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":13,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"referenceStationId","Name":"Reference Station ID","BitLength":16,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"referenceStationType","Name":"Reference Station Type","BitLength":16,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":4,"Id":"timeOfCorrections","Name":"Time of corrections","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":5,"Id":"stationHealth","Name":"Station Health","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":6,"Id":"reservedBits","Name":"Reserved Bits","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":7,"Id":"satelliteId","Name":"Satellite ID","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":8,"Id":"prc","Name":"PRC","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":9,"Id":"rrc","Name":"RRC","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":10,"Id":"udre","Name":"UDRE","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":11,"Id":"iod","Name":"IOD","BitLength":8,"BitOffset":96,"BitStart":0,"Signed":false}]},{"PGN":129550,"Id":"gnssDifferentialCorrectionReceiverInterface","Description":"GNSS Differential Correction Receiver Interface","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"channel","Name":"Channel","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"frequency","Name":"Frequency","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"serialInterfaceBitRate","Name":"Serial Interface Bit Rate","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"serialInterfaceDetectionMode","Name":"Serial Interface Detection Mode","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"differentialSource","Name":"Differential Source","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"differentialOperationMode","Name":"Differential Operation Mode","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false}]},{"PGN":129551,"Id":"gnssDifferentialCorrectionReceiverSignal","Description":"GNSS Differential Correction Receiver Signal","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"channel","Name":"Channel","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"signalStrength","Name":"Signal Strength","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"signalSnr","Name":"Signal SNR","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"frequency","Name":"Frequency","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"stationType","Name":"Station Type","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"stationId","Name":"Station ID","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"differentialSignalBitRate","Name":"Differential Signal Bit Rate","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":9,"Id":"differentialSignalDetectionMode","Name":"Differential Signal Detection Mode","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":10,"Id":"usedAsCorrectionSource","Name":"Used as Correction Source","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":11,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":12,"Id":"differentialSource","Name":"Differential Source","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":13,"Id":"timeSinceLastSatDifferentialSync","Name":"Time since Last Sat Differential Sync","BitLength":8,"BitOffset":96,"BitStart":0,"Signed":false},{"Order":14,"Id":"satelliteServiceIdNo","Name":"Satellite Service ID No.","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":false}]},{"PGN":129556,"Id":"glonassAlmanacData","Description":"GLONASS Almanac Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"prn","Name":"PRN","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"na","Name":"NA","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"cna","Name":"CnA","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"hna","Name":"HnA","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"EpsilonNa","Name":"(epsilon)nA","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"DeltatnaDot","Name":"(deltaTnA)DOT","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"OmegaNa","Name":"(omega)nA","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"DeltaTna","Name":"(delta)TnA","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":9,"Id":"tna","Name":"tnA","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":10,"Id":"LambdaNa","Name":"(lambda)nA","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":11,"Id":"DeltaIna","Name":"(delta)inA","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":12,"Id":"tca","Name":"tcA","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":13,"Id":"tna","Name":"tnA","BitLength":8,"BitOffset":96,"BitStart":0,"Signed":false}]},{"PGN":129792,"Id":"aisDgnssBroadcastBinaryMessage","Description":"AIS DGNSS Broadcast Binary Message","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Signed":false},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Signed":false},{"Order":4,"Id":"nmea2000Reserved","Name":"NMEA 2000 Reserved","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver Information","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":6,"Id":"spare","Name":"Spare","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":7,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":8,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":96,"BitStart":0,"Signed":false},{"Order":9,"Id":"nmea2000Reserved","Name":"NMEA 2000 Reserved","BitLength":8,"BitOffset":128,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":10,"Id":"spare","Name":"Spare","BitLength":8,"BitOffset":136,"BitStart":0,"Signed":false},{"Order":11,"Id":"numberOfBitsInBinaryDataField","Name":"Number of Bits in Binary Data Field","BitLength":8,"BitOffset":144,"BitStart":0,"Signed":false},{"Order":12,"Id":"binaryData","Name":"Binary Data","BitLength":64,"BitOffset":152,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":129793,"Id":"aisUtcAndDateReport","Description":"AIS UTC and Date Report","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":26,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":5,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":72,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"positionAccuracy","Name":"Position Accuracy","BitLength":1,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Low","value":"0"},{"name":"High","value":"1"}]},{"Order":7,"Id":"raim","Name":"RAIM","BitLength":1,"BitOffset":105,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"not in use","value":"0"},{"name":"in use","value":"1"}]},{"Order":8,"Id":"reserved","Name":"Reserved","Description":"NMEA reserved to align next data on byte boundary","BitLength":6,"BitOffset":106,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":9,"Id":"positionTime","Name":"Position Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":112,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"communicationState","Name":"Communication State","Description":"Information used by the TDMA slot allocation algorithm and synchronization information","BitLength":19,"BitOffset":144,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":11,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":163,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":12,"Id":"positionDate","Name":"Position Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":168,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":13,"Id":"reserved","Name":"Reserved","Description":"NMEA reserved to align next data on byte boundary","BitLength":4,"BitOffset":184,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":14,"Id":"gnssType","Name":"GNSS type","BitLength":4,"BitOffset":188,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"undefined","value":"0"},{"name":"GPS","value":"1"},{"name":"GLONASS","value":"2"},{"name":"GPS+GLONASS","value":"3"},{"name":"Loran-C","value":"4"},{"name":"Chayka","value":"5"},{"name":"integrated","value":"6"},{"name":"surveyed","value":"7"},{"name":"Galileo","value":"8"}]},{"Order":15,"Id":"spare","Name":"Spare","BitLength":8,"BitOffset":192,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":129794,"Id":"aisClassAStaticAndVoyageRelatedData","Description":"AIS Class A Static and Voyage Related Data","Type":"Fast","Complete":true,"Length":24,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"imoNumber","Name":"IMO number","BitLength":32,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"callsign","Name":"Callsign","BitLength":56,"BitOffset":72,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":6,"Id":"name","Name":"Name","BitLength":160,"BitOffset":128,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":7,"Id":"typeOfShip","Name":"Type of ship","BitLength":8,"BitOffset":288,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"unavailable","value":"0"},{"name":"Wing In Ground","value":"20"},{"name":"Wing In Ground (no other information)","value":"29"},{"name":"Fishing","value":"30"},{"name":"Towing","value":"31"},{"name":"Towing exceeds 200m or wider than 25m","value":"32"},{"name":"Engaged in dredging or underwater operations","value":"33"},{"name":"Engaged in diving operations","value":"34"},{"name":"Engaged in military operations","value":"35"},{"name":"Sailing","value":"36"},{"name":"Pleasure","value":"37"},{"name":"High speed craft","value":"40"},{"name":"High speed craft carrying dangerous goods","value":"41"},{"name":"High speed craft hazard cat B","value":"42"},{"name":"High speed craft hazard cat C","value":"43"},{"name":"High speed craft hazard cat D","value":"44"},{"name":"High speed craft (no additional information)","value":"49"},{"name":"Pilot vessel","value":"50"},{"name":"SAR","value":"51"},{"name":"Tug","value":"52"},{"name":"Port tender","value":"53"},{"name":"Anti-pollution","value":"54"},{"name":"Law enforcement","value":"55"},{"name":"Spare","value":"56"},{"name":"Spare #2","value":"57"},{"name":"Medical","value":"58"},{"name":"RR Resolution No.18","value":"59"},{"name":"Passenger ship","value":"60"},{"name":"Passenger ship (no additional information)","value":"69"},{"name":"Cargo ship","value":"70"},{"name":"Cargo ship carrying dangerous goods","value":"71"},{"name":"Cargo ship hazard cat B","value":"72"},{"name":"Cargo ship hazard cat C","value":"73"},{"name":"Cargo ship hazard cat D","value":"74"},{"name":"Cargo ship (no additional information)","value":"79"},{"name":"Tanker","value":"80"},{"name":"Tanker carrying dangerous goods","value":"81"},{"name":"Tanker hazard cat B","value":"82"},{"name":"Tanker hazard cat C","value":"83"},{"name":"Tanker hazard cat D","value":"84"},{"name":"Tanker (no additional information)","value":"89"},{"name":"Other","value":"90"},{"name":"Other carrying dangerous goods","value":"91"},{"name":"Other hazard cat B","value":"92"},{"name":"Other hazard cat C","value":"93"},{"name":"Other hazard cat D","value":"94"},{"name":"Other (no additional information)","value":"99"}]},{"Order":8,"Id":"length","Name":"Length","BitLength":16,"BitOffset":296,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":9,"Id":"beam","Name":"Beam","BitLength":16,"BitOffset":312,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":10,"Id":"positionReferenceFromStarboard","Name":"Position reference from Starboard","BitLength":16,"BitOffset":328,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":11,"Id":"positionReferenceFromBow","Name":"Position reference from Bow","BitLength":16,"BitOffset":344,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":12,"Id":"etaDate","Name":"ETA Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":360,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":13,"Id":"etaTime","Name":"ETA Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":376,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":14,"Id":"draft","Name":"Draft","BitLength":16,"BitOffset":408,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":15,"Id":"destination","Name":"Destination","BitLength":160,"BitOffset":424,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":16,"Id":"aisVersionIndicator","Name":"AIS version indicator","BitLength":2,"BitOffset":584,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"ITU-R M.1371-1","value":"0"},{"name":"ITU-R M.1371-3","value":"1"}]},{"Order":17,"Id":"gnssType","Name":"GNSS type","BitLength":4,"BitOffset":586,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"undefined","value":"0"},{"name":"GPS","value":"1"},{"name":"GLONASS","value":"2"},{"name":"GPS+GLONASS","value":"3"},{"name":"Loran-C","value":"4"},{"name":"Chayka","value":"5"},{"name":"integrated","value":"6"},{"name":"surveyed","value":"7"},{"name":"Galileo","value":"8"}]},{"Order":18,"Id":"dte","Name":"DTE","BitLength":1,"BitOffset":590,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"available","value":"0"},{"name":"not available","value":"1"}]},{"Order":19,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":1,"BitOffset":591,"BitStart":7,"Type":"Binary data","Signed":false},{"Order":20,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":592,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]}]},{"PGN":129795,"Id":"aisAddressedBinaryMessage","Description":"AIS Addressed Binary Message","Type":"Fast","Complete":true,"Length":13,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":1,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":41,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"sequenceNumber","Name":"Sequence Number","BitLength":2,"BitOffset":46,"BitStart":6,"Signed":false},{"Order":7,"Id":"destinationId","Name":"Destination ID","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":6,"BitOffset":80,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":9,"Id":"retransmitFlag","Name":"Retransmit flag","BitLength":1,"BitOffset":86,"BitStart":6,"Signed":false},{"Order":10,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":1,"BitOffset":87,"BitStart":7,"Type":"Binary data","Signed":false},{"Order":11,"Id":"numberOfBitsInBinaryDataField","Name":"Number of Bits in Binary Data Field","BitLength":16,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"binaryData","Name":"Binary Data","BitLength":64,"BitOffset":104,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":129796,"Id":"aisAcknowledge","Description":"AIS Acknowledge","Type":"Fast","Complete":true,"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":1,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":41,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":46,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":7,"Id":"destinationId1","Name":"Destination ID #1","BitLength":32,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"sequenceNumberForId1","Name":"Sequence Number for ID 1","Description":"reserved","BitLength":2,"BitOffset":80,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":9,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":6,"BitOffset":82,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":10,"Id":"sequenceNumberForIdN","Name":"Sequence Number for ID n","Description":"reserved","BitLength":2,"BitOffset":88,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":129797,"Id":"aisBinaryBroadcastMessage","Description":"AIS Binary Broadcast Message","Type":"Fast","Complete":true,"Length":233,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":32,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":1,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":41,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":46,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":7,"Id":"numberOfBitsInBinaryDataField","Name":"Number of Bits in Binary Data Field","BitLength":16,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"binaryData","Name":"Binary Data","BitLength":2040,"BitOffset":64,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":129798,"Id":"aisSarAircraftPositionReport","Description":"AIS SAR Aircraft Position Report","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"longitude","Name":"Longitude","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":5,"Id":"latitude","Name":"Latitude","BitLength":32,"BitOffset":72,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"positionAccuracy","Name":"Position Accuracy","BitLength":1,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Low","value":"0"},{"name":"High","value":"1"}]},{"Order":7,"Id":"raim","Name":"RAIM","BitLength":1,"BitOffset":105,"BitStart":1,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"not in use","value":"0"},{"name":"in use","value":"1"}]},{"Order":8,"Id":"timeStamp","Name":"Time Stamp","Description":"0-59 = UTC second when the report was generated","BitLength":6,"BitOffset":106,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Not available","value":"60"},{"name":"Manual input mode","value":"61"},{"name":"Dead reckoning mode","value":"62"},{"name":"Positioning system is inoperative","value":"63"}]},{"Order":9,"Id":"cog","Name":"COG","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"sog","Name":"SOG","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"m/s","Resolution":"0.1","Signed":false},{"Order":11,"Id":"communicationState","Name":"Communication State","Description":"Information used by the TDMA slot allocation algorithm and synchronization information","BitLength":19,"BitOffset":144,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":12,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":163,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":13,"Id":"altitude","Name":"Altitude","BitLength":64,"BitOffset":168,"BitStart":0,"Units":"m","Resolution":0.000001,"Signed":true},{"Order":14,"Id":"reservedForRegionalApplications","Name":"Reserved for Regional Applications","BitLength":8,"BitOffset":232,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":15,"Id":"dte","Name":"DTE","BitLength":1,"BitOffset":240,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Available","value":"0"},{"name":"Not available","value":"1"}]},{"Order":16,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":7,"BitOffset":241,"BitStart":1,"Type":"Binary data","Signed":false}]},{"PGN":129799,"Id":"radioFrequencyModePower","Description":"Radio Frequency/Mode/Power","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"rxFrequency","Name":"Rx Frequency","BitLength":32,"BitOffset":0,"BitStart":0,"Units":"Hz","Resolution":10,"Signed":false},{"Order":2,"Id":"txFrequency","Name":"Tx Frequency","BitLength":32,"BitOffset":32,"BitStart":0,"Units":"Hz","Resolution":10,"Signed":false},{"Order":3,"Id":"radioChannel","Name":"Radio Channel","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":4,"Id":"txPower","Name":"Tx Power","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":5,"Id":"mode","Name":"Mode","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":6,"Id":"channelBandwidth","Name":"Channel Bandwidth","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false}]},{"PGN":129800,"Id":"aisUtcDateInquiry","Description":"AIS UTC/Date Inquiry","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":7,"Id":"destinationId","Name":"Destination ID","BitLength":30,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":78,"BitStart":6,"Type":"Binary data","Signed":false}]},{"PGN":129801,"Id":"aisAddressedSafetyRelatedMessage","Description":"AIS Addressed Safety Related Message","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Units":"MMSI","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"sequenceNumber","Name":"Sequence Number","BitLength":2,"BitOffset":45,"BitStart":5,"Signed":false},{"Order":7,"Id":"destinationId","Name":"Destination ID","BitLength":30,"BitOffset":47,"BitStart":7,"Units":"MMSI","Signed":false},{"Order":8,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":77,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":9,"Id":"retransmitFlag","Name":"Retransmit flag","BitLength":1,"BitOffset":79,"BitStart":7,"Signed":false},{"Order":10,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":7,"BitOffset":80,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":11,"Id":"safetyRelatedText","Name":"Safety Related Text","BitLength":2040,"BitOffset":87,"BitStart":7,"Type":"ASCII text","Signed":false}]},{"PGN":129802,"Id":"aisSafetyRelatedBroadcastMessage","Description":"AIS Safety Related Broadcast Message","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":7,"Id":"safetyRelatedText","Name":"Safety Related Text","BitLength":288,"BitOffset":48,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":129803,"Id":"aisInterrogation","Description":"AIS Interrogation","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":8,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":7,"Id":"destinationId","Name":"Destination ID","BitLength":30,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":78,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":9,"Id":"messageIdA","Name":"Message ID A","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"slotOffsetA","Name":"Slot Offset A","BitLength":14,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":102,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":12,"Id":"messageIdB","Name":"Message ID B","BitLength":8,"BitOffset":104,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":13,"Id":"slotOffsetB","Name":"Slot Offset B","BitLength":14,"BitOffset":112,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":14,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":126,"BitStart":6,"Type":"Binary data","Signed":false}]},{"PGN":129804,"Id":"aisAssignmentModeCommand","Description":"AIS Assignment Mode Command","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":23,"RepeatingFields":3,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":7,"Id":"destinationId","Name":"Destination ID","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"offset","Name":"Offset","BitLength":16,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"increment","Name":"Increment","BitLength":16,"BitOffset":96,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":129805,"Id":"aisDataLinkManagementMessage","Description":"AIS Data Link Management Message","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":4,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":7,"Id":"offset","Name":"Offset","BitLength":10,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"numberOfSlots","Name":"Number of Slots","BitLength":8,"BitOffset":58,"BitStart":2,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"timeout","Name":"Timeout","BitLength":8,"BitOffset":66,"BitStart":2,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"increment","Name":"Increment","BitLength":8,"BitOffset":74,"BitStart":2,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":129806,"Id":"aisChannelManagement","Description":"AIS Channel Management","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":45,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":7,"Id":"channelA","Name":"Channel A","BitLength":7,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"channelB","Name":"Channel B","BitLength":7,"BitOffset":55,"BitStart":7,"Signed":false},{"Order":9,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":62,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":10,"Id":"power","Name":"Power","Description":"reserved","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":11,"Id":"txRxMode","Name":"Tx/Rx Mode","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"northEastLongitudeCorner1","Name":"North East Longitude Corner 1","BitLength":32,"BitOffset":80,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":13,"Id":"northEastLatitudeCorner1","Name":"North East Latitude Corner 1","BitLength":32,"BitOffset":112,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":14,"Id":"southWestLongitudeCorner1","Name":"South West Longitude Corner 1","BitLength":32,"BitOffset":144,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":15,"Id":"southWestLatitudeCorner2","Name":"South West Latitude Corner 2","BitLength":32,"BitOffset":176,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":16,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":6,"BitOffset":208,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":17,"Id":"addressedOrBroadcastMessageIndicator","Name":"Addressed or Broadcast Message Indicator","BitLength":2,"BitOffset":214,"BitStart":6,"Signed":false},{"Order":18,"Id":"channelABandwidth","Name":"Channel A Bandwidth","BitLength":7,"BitOffset":216,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":19,"Id":"channelBBandwidth","Name":"Channel B Bandwidth","BitLength":7,"BitOffset":223,"BitStart":7,"Type":"Integer","Resolution":1,"Signed":false},{"Order":20,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":230,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":21,"Id":"transitionalZoneSize","Name":"Transitional Zone Size","BitLength":8,"BitOffset":232,"BitStart":0,"Signed":false}]},{"PGN":129807,"Id":"aisClassBGroupAssignment","Description":"AIS Class B Group Assignment","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat Indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"sourceId","Name":"Source ID","BitLength":30,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":38,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":5,"Id":"txRxMode","Name":"Tx/Rx Mode","BitLength":2,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":6,"BitOffset":42,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":7,"Id":"northEastLongitudeCorner1","Name":"North East Longitude Corner 1","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":8,"Id":"northEastLatitudeCorner1","Name":"North East Latitude Corner 1","BitLength":32,"BitOffset":80,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":9,"Id":"southWestLongitudeCorner1","Name":"South West Longitude Corner 1","BitLength":32,"BitOffset":112,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":10,"Id":"southWestLatitudeCorner2","Name":"South West Latitude Corner 2","BitLength":32,"BitOffset":144,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":11,"Id":"stationType","Name":"Station Type","BitLength":6,"BitOffset":176,"BitStart":0,"Signed":false},{"Order":12,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":182,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":13,"Id":"shipAndCargoFilter","Name":"Ship and Cargo Filter","BitLength":6,"BitOffset":184,"BitStart":0,"Signed":false},{"Order":14,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":190,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":15,"Id":"reportingInterval","Name":"Reporting Interval","BitLength":16,"BitOffset":192,"BitStart":0,"Signed":false},{"Order":16,"Id":"quietTime","Name":"Quiet Time","BitLength":16,"BitOffset":208,"BitStart":0,"Signed":false}]},{"PGN":129808,"Id":"dscDistressCallInformation","Description":"DSC Distress Call Information","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"dscFormat","Name":"DSC Format","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Geographical area","value":"102"},{"name":"Distress","value":"112"},{"name":"Common interest","value":"114"},{"name":"All ships","value":"116"},{"name":"Individual stations","value":"120"},{"name":"Non-calling purpose","value":"121"},{"name":"Individual station automatic","value":"123"}]},{"Order":2,"Id":"dscCategory","Name":"DSC Category","Description":"Distress","BitLength":8,"BitOffset":8,"BitStart":0,"Match":112,"Type":"Lookup table","Signed":false},{"Order":3,"Id":"dscMessageAddress","Name":"DSC Message Address","Description":"MMSI, Geographic Area or blank","BitLength":40,"BitOffset":16,"BitStart":0,"Type":"Decimal encoded number","Signed":false},{"Order":4,"Id":"natureOfDistress","Name":"Nature of Distress","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Fire","value":"100"},{"name":"Flooding","value":"101"},{"name":"Collision","value":"102"},{"name":"Grounding","value":"103"},{"name":"Listing","value":"104"},{"name":"Sinking","value":"105"},{"name":"Disabled and adrift","value":"106"},{"name":"Undesignated","value":"107"},{"name":"Abandoning ship","value":"108"},{"name":"Piracy","value":"109"},{"name":"Man overboard","value":"110"},{"name":"EPIRB emission","value":"112"}]},{"Order":5,"Id":"subsequentCommunicationModeOr2ndTelecommand","Name":"Subsequent Communication Mode or 2nd Telecommand","BitLength":8,"BitOffset":64,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No reason given","value":"100"},{"name":"Congestion at MSC","value":"101"},{"name":"Busy","value":"102"},{"name":"Queue indication","value":"103"},{"name":"Station barred","value":"104"},{"name":"No operator available","value":"105"},{"name":"Operator temporarily unavailable","value":"106"},{"name":"Equipment disabled","value":"107"},{"name":"Unable to use proposed channel","value":"108"},{"name":"Unable to use proposed mode","value":"109"},{"name":"Ships and aircraft of States not parties to an armed conflict","value":"110"},{"name":"Medical transports","value":"111"},{"name":"Pay phone/public call office","value":"112"},{"name":"Fax/data","value":"113"},{"name":"No information","value":"126"}]},{"Order":6,"Id":"proposedRxFrequencyChannel","Name":"Proposed Rx Frequency/Channel","BitLength":48,"BitOffset":72,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":7,"Id":"proposedTxFrequencyChannel","Name":"Proposed Tx Frequency/Channel","BitLength":48,"BitOffset":120,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":8,"Id":"telephoneNumber","Name":"Telephone Number","BitLength":16,"BitOffset":168,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":9,"Id":"latitudeOfVesselReported","Name":"Latitude of Vessel Reported","Description":"offset depends on previous field, as do all following fields","BitLength":32,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":10,"Id":"longitudeOfVesselReported","Name":"Longitude of Vessel Reported","BitLength":32,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":11,"Id":"timeOfPosition","Name":"Time of Position","Description":"Seconds since midnight","BitLength":32,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":12,"Id":"mmsiOfShipInDistress","Name":"MMSI of Ship In Distress","BitLength":40,"BitStart":0,"Units":"MMSI","Type":"Decimal encoded number","Signed":false},{"Order":13,"Id":"dscEosSymbol","Name":"DSC EOS Symbol","BitLength":8,"BitStart":0,"Signed":false},{"Order":14,"Id":"expansionEnabled","Name":"Expansion Enabled","BitLength":2,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":15,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":6,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":16,"Id":"callingRxFrequencyChannel","Name":"Calling Rx Frequency/Channel","BitLength":48,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":17,"Id":"callingTxFrequencyChannel","Name":"Calling Tx Frequency/Channel","BitLength":48,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":18,"Id":"timeOfReceipt","Name":"Time of Receipt","Description":"Seconds since midnight","BitLength":32,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":19,"Id":"dateOfReceipt","Name":"Date of Receipt","Description":"Days since January 1, 1970","BitLength":16,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":20,"Id":"dscEquipmentAssignedMessageId","Name":"DSC Equipment Assigned Message ID","BitLength":16,"BitStart":0,"Signed":false},{"Order":21,"Id":"dscExpansionFieldSymbol","Name":"DSC Expansion Field Symbol","BitLength":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Enhanced position","value":"100"},{"name":"Source and datum of position","value":"101"},{"name":"SOG","value":"102"},{"name":"COG","value":"103"},{"name":"Additional station identification","value":"104"},{"name":"Enhanced geographic area","value":"105"},{"name":"Number of persons on board","value":"106"}]},{"Order":22,"Id":"dscExpansionFieldData","Name":"DSC Expansion Field Data","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":129808,"Id":"dscCallInformation","Description":"DSC Call Information","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"dscFormatSymbol","Name":"DSC Format Symbol","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Geographical area","value":"102"},{"name":"Distress","value":"112"},{"name":"Common interest","value":"114"},{"name":"All ships","value":"116"},{"name":"Individual stations","value":"120"},{"name":"Non-calling purpose","value":"121"},{"name":"Individual station automatic","value":"123"}]},{"Order":2,"Id":"dscCategorySymbol","Name":"DSC Category Symbol","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Routine","value":"100"},{"name":"Safety","value":"108"},{"name":"Urgency","value":"110"},{"name":"Distress","value":"112"}]},{"Order":3,"Id":"dscMessageAddress","Name":"DSC Message Address","Description":"MMSI, Geographic Area or blank","BitLength":40,"BitOffset":16,"BitStart":0,"Type":"Decimal encoded number","Signed":false},{"Order":4,"Id":"1stTelecommand","Name":"1st Telecommand","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"F3E/G3E All modes TP","value":"100"},{"name":"F3E/G3E duplex TP","value":"101"},{"name":"Polling","value":"103"},{"name":"Unable to comply","value":"104"},{"name":"End of call","value":"105"},{"name":"Data","value":"106"},{"name":"J3E TP","value":"109"},{"name":"Distress acknowledgement","value":"110"},{"name":"Distress relay","value":"112"},{"name":"F1B/J2B TTY-FEC","value":"113"},{"name":"F1B/J2B TTY-ARQ","value":"115"},{"name":"Test","value":"118"},{"name":"Ship position or location registration updating","value":"121"},{"name":"No information","value":"126"}]},{"Order":5,"Id":"subsequentCommunicationModeOr2ndTelecommand","Name":"Subsequent Communication Mode or 2nd Telecommand","BitLength":8,"BitOffset":64,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No reason given","value":"100"},{"name":"Congestion at MSC","value":"101"},{"name":"Busy","value":"102"},{"name":"Queue indication","value":"103"},{"name":"Station barred","value":"104"},{"name":"No operator available","value":"105"},{"name":"Operator temporarily unavailable","value":"106"},{"name":"Equipment disabled","value":"107"},{"name":"Unable to use proposed channel","value":"108"},{"name":"Unable to use proposed mode","value":"109"},{"name":"Ships and aircraft of States not parties to an armed conflict","value":"110"},{"name":"Medical transports","value":"111"},{"name":"Pay phone/public call office","value":"112"},{"name":"Fax/data","value":"113"},{"name":"No information","value":"126"}]},{"Order":6,"Id":"proposedRxFrequencyChannel","Name":"Proposed Rx Frequency/Channel","BitLength":48,"BitOffset":72,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":7,"Id":"proposedTxFrequencyChannel","Name":"Proposed Tx Frequency/Channel","BitLength":48,"BitOffset":120,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":8,"Id":"telephoneNumber","Name":"Telephone Number","BitLength":16,"BitOffset":168,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":9,"Id":"latitudeOfVesselReported","Name":"Latitude of Vessel Reported","Description":"offset depends on previous field, as do all following fields","BitLength":32,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":10,"Id":"longitudeOfVesselReported","Name":"Longitude of Vessel Reported","BitLength":32,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":11,"Id":"timeOfPosition","Name":"Time of Position","Description":"Seconds since midnight","BitLength":32,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":12,"Id":"mmsiOfShipInDistress","Name":"MMSI of Ship In Distress","BitLength":40,"BitStart":0,"Units":"MMSI","Type":"Decimal encoded number","Signed":false},{"Order":13,"Id":"dscEosSymbol","Name":"DSC EOS Symbol","BitLength":8,"BitStart":0,"Signed":false},{"Order":14,"Id":"expansionEnabled","Name":"Expansion Enabled","BitLength":2,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":15,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":6,"BitStart":2,"Type":"Binary data","Signed":false},{"Order":16,"Id":"callingRxFrequencyChannel","Name":"Calling Rx Frequency/Channel","BitLength":48,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":17,"Id":"callingTxFrequencyChannel","Name":"Calling Tx Frequency/Channel","BitLength":48,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":18,"Id":"timeOfReceipt","Name":"Time of Receipt","Description":"Seconds since midnight","BitLength":32,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":19,"Id":"dateOfReceipt","Name":"Date of Receipt","Description":"Days since January 1, 1970","BitLength":16,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":20,"Id":"dscEquipmentAssignedMessageId","Name":"DSC Equipment Assigned Message ID","BitLength":16,"BitStart":0,"Signed":false},{"Order":21,"Id":"dscExpansionFieldSymbol","Name":"DSC Expansion Field Symbol","BitLength":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Enhanced position","value":"100"},{"name":"Source and datum of position","value":"101"},{"name":"SOG","value":"102"},{"name":"COG","value":"103"},{"name":"Additional station identification","value":"104"},{"name":"Enhanced geographic area","value":"105"},{"name":"Number of persons on board","value":"106"}]},{"Order":22,"Id":"dscExpansionFieldData","Name":"DSC Expansion Field Data","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":129809,"Id":"aisClassBStaticDataMsg24PartA","Description":"AIS Class B static data (msg 24 Part A)","Type":"Fast","Complete":true,"Length":27,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"name","Name":"Name","BitLength":160,"BitOffset":40,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":5,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":200,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":205,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":7,"Id":"sequenceId","Name":"Sequence ID","BitLength":8,"BitOffset":208,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":129810,"Id":"aisClassBStaticDataMsg24PartB","Description":"AIS Class B static data (msg 24 Part B)","Type":"Fast","Complete":true,"Length":34,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":3,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":8,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"typeOfShip","Name":"Type of ship","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"unavailable","value":"0"},{"name":"Wing In Ground","value":"20"},{"name":"Wing In Ground (no other information)","value":"29"},{"name":"Fishing","value":"30"},{"name":"Towing","value":"31"},{"name":"Towing exceeds 200m or wider than 25m","value":"32"},{"name":"Engaged in dredging or underwater operations","value":"33"},{"name":"Engaged in diving operations","value":"34"},{"name":"Engaged in military operations","value":"35"},{"name":"Sailing","value":"36"},{"name":"Pleasure","value":"37"},{"name":"High speed craft","value":"40"},{"name":"High speed craft carrying dangerous goods","value":"41"},{"name":"High speed craft hazard cat B","value":"42"},{"name":"High speed craft hazard cat C","value":"43"},{"name":"High speed craft hazard cat D","value":"44"},{"name":"High speed craft (no additional information)","value":"49"},{"name":"Pilot vessel","value":"50"},{"name":"SAR","value":"51"},{"name":"Tug","value":"52"},{"name":"Port tender","value":"53"},{"name":"Anti-pollution","value":"54"},{"name":"Law enforcement","value":"55"},{"name":"Spare","value":"56"},{"name":"Spare #2","value":"57"},{"name":"Medical","value":"58"},{"name":"RR Resolution No.18","value":"59"},{"name":"Passenger ship","value":"60"},{"name":"Passenger ship (no additional information)","value":"69"},{"name":"Cargo ship","value":"70"},{"name":"Cargo ship carrying dangerous goods","value":"71"},{"name":"Cargo ship hazard cat B","value":"72"},{"name":"Cargo ship hazard cat C","value":"73"},{"name":"Cargo ship hazard cat D","value":"74"},{"name":"Cargo ship (no additional information)","value":"79"},{"name":"Tanker","value":"80"},{"name":"Tanker carrying dangerous goods","value":"81"},{"name":"Tanker hazard cat B","value":"82"},{"name":"Tanker hazard cat C","value":"83"},{"name":"Tanker hazard cat D","value":"84"},{"name":"Tanker (no additional information)","value":"89"},{"name":"Other","value":"90"},{"name":"Other carrying dangerous goods","value":"91"},{"name":"Other hazard cat B","value":"92"},{"name":"Other hazard cat C","value":"93"},{"name":"Other hazard cat D","value":"94"},{"name":"Other (no additional information)","value":"99"}]},{"Order":5,"Id":"vendorId","Name":"Vendor ID","BitLength":56,"BitOffset":48,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":6,"Id":"callsign","Name":"Callsign","BitLength":56,"BitOffset":104,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":7,"Id":"length","Name":"Length","BitLength":16,"BitOffset":160,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":8,"Id":"beam","Name":"Beam","BitLength":16,"BitOffset":176,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":9,"Id":"positionReferenceFromStarboard","Name":"Position reference from Starboard","BitLength":16,"BitOffset":192,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":10,"Id":"positionReferenceFromBow","Name":"Position reference from Bow","BitLength":16,"BitOffset":208,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":11,"Id":"mothershipUserId","Name":"Mothership User ID","Description":"MMSI of mother ship sent by daughter vessels","BitLength":32,"BitOffset":224,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":256,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":13,"Id":"spare","Name":"Spare","BitLength":6,"BitOffset":258,"BitStart":2,"Type":"Integer","Resolution":1,"Signed":false},{"Order":14,"Id":"aisTransceiverInformation","Name":"AIS Transceiver information","BitLength":5,"BitOffset":264,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Channel A VDL reception","value":"0"},{"name":"Channel B VDL reception","value":"1"},{"name":"Channel A VDL transmission","value":"2"},{"name":"Channel B VDL transmission","value":"3"},{"name":"Own information not broadcast","value":"4"},{"name":"Reserved","value":"5"}]},{"Order":15,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":3,"BitOffset":269,"BitStart":5,"Type":"Binary data","Signed":false},{"Order":16,"Id":"sequenceId","Name":"Sequence ID","BitLength":8,"BitOffset":272,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130060,"Id":"label","Description":"Label","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":0,"RepeatingFields":0},{"PGN":130061,"Id":"channelSourceConfiguration","Description":"Channel Source Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":0,"RepeatingFields":0},{"PGN":130064,"Id":"routeAndWpServiceDatabaseList","Description":"Route and WP Service - Database List","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":9,"Fields":[{"Order":1,"Id":"startDatabaseId","Name":"Start Database ID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfDatabasesAvailable","Name":"Number of Databases Available","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"databaseName","Name":"Database Name","BitLength":64,"BitOffset":32,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":6,"Id":"databaseTimestamp","Name":"Database Timestamp","Description":"Seconds since midnight","BitLength":32,"BitOffset":96,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":7,"Id":"databaseDatestamp","Name":"Database Datestamp","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":8,"Id":"wpPositionResolution","Name":"WP Position Resolution","BitLength":6,"BitOffset":144,"BitStart":0,"Signed":false},{"Order":9,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":150,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":10,"Id":"numberOfRoutesInDatabase","Name":"Number of Routes in Database","BitLength":16,"BitOffset":152,"BitStart":0,"Signed":false},{"Order":11,"Id":"numberOfWpsInDatabase","Name":"Number of WPs in Database","BitLength":16,"BitOffset":168,"BitStart":0,"Signed":false},{"Order":12,"Id":"numberOfBytesInDatabase","Name":"Number of Bytes in Database","BitLength":16,"BitOffset":184,"BitStart":0,"Signed":false}]},{"PGN":130065,"Id":"routeAndWpServiceRouteList","Description":"Route and WP Service - Route List","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":6,"Fields":[{"Order":1,"Id":"startRouteId","Name":"Start Route ID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfRoutesInDatabase","Name":"Number of Routes in Database","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":5,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"routeName","Name":"Route Name","BitLength":64,"BitOffset":40,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":7,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":4,"BitOffset":104,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":8,"Id":"wpIdentificationMethod","Name":"WP Identification Method","BitLength":2,"BitOffset":108,"BitStart":4,"Signed":false},{"Order":9,"Id":"routeStatus","Name":"Route Status","BitLength":2,"BitOffset":110,"BitStart":6,"Signed":false}]},{"PGN":130066,"Id":"routeAndWpServiceRouteWpListAttributes","Description":"Route and WP Service - Route/WP-List Attributes","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"routeWpListName","Name":"Route/WP-List Name","BitLength":64,"BitOffset":16,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":4,"Id":"routeWpListTimestamp","Name":"Route/WP-List Timestamp","Description":"Seconds since midnight","BitLength":32,"BitOffset":80,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"routeWpListDatestamp","Name":"Route/WP-List Datestamp","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":6,"Id":"changeAtLastTimestamp","Name":"Change at Last Timestamp","BitLength":8,"BitOffset":128,"BitStart":0,"Signed":false},{"Order":7,"Id":"numberOfWpsInTheRouteWpList","Name":"Number of WPs in the Route/WP-List","BitLength":16,"BitOffset":136,"BitStart":0,"Signed":false},{"Order":8,"Id":"criticalSupplementaryParameters","Name":"Critical supplementary parameters","BitLength":8,"BitOffset":152,"BitStart":0,"Signed":false},{"Order":9,"Id":"navigationMethod","Name":"Navigation Method","BitLength":2,"BitOffset":160,"BitStart":0,"Signed":false},{"Order":10,"Id":"wpIdentificationMethod","Name":"WP Identification Method","BitLength":2,"BitOffset":162,"BitStart":2,"Signed":false},{"Order":11,"Id":"routeStatus","Name":"Route Status","BitLength":2,"BitOffset":164,"BitStart":4,"Signed":false},{"Order":12,"Id":"xteLimitForTheRoute","Name":"XTE Limit for the Route","BitLength":16,"BitOffset":166,"BitStart":6,"Signed":false}]},{"PGN":130067,"Id":"routeAndWpServiceRouteWpNamePosition","Description":"Route and WP Service - Route - WP Name & Position","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":4,"Fields":[{"Order":1,"Id":"startRps","Name":"Start RPS#","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfWpsInTheRouteWpList","Name":"Number of WPs in the Route/WP-List","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"wpId","Name":"WP ID","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"wpName","Name":"WP Name","BitLength":64,"BitOffset":56,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":8,"Id":"wpLatitude","Name":"WP Latitude","BitLength":32,"BitOffset":120,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":9,"Id":"wpLongitude","Name":"WP Longitude","BitLength":32,"BitOffset":152,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true}]},{"PGN":130068,"Id":"routeAndWpServiceRouteWpName","Description":"Route and WP Service - Route - WP Name","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"startRps","Name":"Start RPS#","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfWpsInTheRouteWpList","Name":"Number of WPs in the Route/WP-List","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"wpId","Name":"WP ID","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"wpName","Name":"WP Name","BitLength":64,"BitOffset":56,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130069,"Id":"routeAndWpServiceXteLimitNavigationMethod","Description":"Route and WP Service - XTE Limit & Navigation Method","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":6,"Fields":[{"Order":1,"Id":"startRps","Name":"Start RPS#","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfWpsWithASpecificXteLimitOrNavMethod","Name":"Number of WPs with a specific XTE Limit or Nav. Method","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"rps","Name":"RPS#","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"xteLimitInTheLegAfterWp","Name":"XTE limit in the leg after WP","BitLength":16,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":8,"Id":"navMethodInTheLegAfterWp","Name":"Nav. Method in the leg after WP","BitLength":4,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":9,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":76,"BitStart":4,"Type":"Binary data","Signed":false}]},{"PGN":130070,"Id":"routeAndWpServiceWpComment","Description":"Route and WP Service - WP Comment","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"startId","Name":"Start ID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfWpsWithComments","Name":"Number of WPs with Comments","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"wpIdRps","Name":"WP ID / RPS#","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"comment","Name":"Comment","BitLength":64,"BitOffset":56,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130071,"Id":"routeAndWpServiceRouteComment","Description":"Route and WP Service - Route Comment","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"startRouteId","Name":"Start Route ID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfRoutesWithComments","Name":"Number of Routes with Comments","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"comment","Name":"Comment","BitLength":64,"BitOffset":48,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130072,"Id":"routeAndWpServiceDatabaseComment","Description":"Route and WP Service - Database Comment","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"startDatabaseId","Name":"Start Database ID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfDatabasesWithComments","Name":"Number of Databases with Comments","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"comment","Name":"Comment","BitLength":64,"BitOffset":40,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130073,"Id":"routeAndWpServiceRadiusOfTurn","Description":"Route and WP Service - Radius of Turn","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"startRps","Name":"Start RPS#","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfWpsWithASpecificRadiusOfTurn","Name":"Number of WPs with a specific Radius of Turn","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"routeId","Name":"Route ID","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":6,"Id":"rps","Name":"RPS#","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"radiusOfTurn","Name":"Radius of Turn","BitLength":16,"BitOffset":56,"BitStart":0,"Signed":false}]},{"PGN":130074,"Id":"routeAndWpServiceWpListWpNamePosition","Description":"Route and WP Service - WP List - WP Name & Position","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":4,"Fields":[{"Order":1,"Id":"startWpId","Name":"Start WP ID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"nitems","Name":"nItems","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"numberOfValidWpsInTheWpList","Name":"Number of valid WPs in the WP-List","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":4,"Id":"databaseId","Name":"Database ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":5,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":6,"Id":"wpId","Name":"WP ID","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":7,"Id":"wpName","Name":"WP Name","BitLength":64,"BitOffset":56,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":8,"Id":"wpLatitude","Name":"WP Latitude","BitLength":32,"BitOffset":120,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":9,"Id":"wpLongitude","Name":"WP Longitude","BitLength":32,"BitOffset":152,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true}]},{"PGN":130306,"Id":"windData","Description":"Wind Data","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"windSpeed","Name":"Wind Speed","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":3,"Id":"windAngle","Name":"Wind Angle","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":4,"Id":"reference","Name":"Reference","BitLength":3,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True (ground referenced to North)","value":"0"},{"name":"Magnetic (ground referenced to Magnetic North)","value":"1"},{"name":"Apparent","value":"2"},{"name":"True (boat referenced)","value":"3"},{"name":"True (water referenced)","value":"4"}]},{"Order":5,"Id":"reserved","Name":"Reserved","BitLength":21,"BitOffset":43,"BitStart":3,"Type":"Binary data","Signed":false}]},{"PGN":130310,"Id":"environmentalParameters","Description":"Environmental Parameters","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"waterTemperature","Name":"Water Temperature","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":3,"Id":"outsideAmbientAirTemperature","Name":"Outside Ambient Air Temperature","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":4,"Id":"atmosphericPressure","Name":"Atmospheric Pressure","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":5,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":130311,"Id":"environmentalParameters","Description":"Environmental Parameters","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"temperatureSource","Name":"Temperature Source","BitLength":6,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Sea Temperature","value":"0"},{"name":"Outside Temperature","value":"1"},{"name":"Inside Temperature","value":"2"},{"name":"Engine Room Temperature","value":"3"},{"name":"Main Cabin Temperature","value":"4"},{"name":"Live Well Temperature","value":"5"},{"name":"Bait Well Temperature","value":"6"},{"name":"Refridgeration Temperature","value":"7"},{"name":"Heating System Temperature","value":"8"},{"name":"Dew Point Temperature","value":"9"},{"name":"Apparent Wind Chill Temperature","value":"10"},{"name":"Theoretical Wind Chill Temperature","value":"11"},{"name":"Heat Index Temperature","value":"12"},{"name":"Freezer Temperature","value":"13"},{"name":"Exhaust Gas Temperature","value":"14"}]},{"Order":3,"Id":"humiditySource","Name":"Humidity Source","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Inside","value":"0"},{"name":"Outside","value":"1"}]},{"Order":4,"Id":"temperature","Name":"Temperature","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":5,"Id":"humidity","Name":"Humidity","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"%","Resolution":"0.004","Signed":true},{"Order":6,"Id":"atmosphericPressure","Name":"Atmospheric Pressure","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false}]},{"PGN":130312,"Id":"temperature","Description":"Temperature","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"source","Name":"Source","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Sea Temperature","value":"0"},{"name":"Outside Temperature","value":"1"},{"name":"Inside Temperature","value":"2"},{"name":"Engine Room Temperature","value":"3"},{"name":"Main Cabin Temperature","value":"4"},{"name":"Live Well Temperature","value":"5"},{"name":"Bait Well Temperature","value":"6"},{"name":"Refridgeration Temperature","value":"7"},{"name":"Heating System Temperature","value":"8"},{"name":"Dew Point Temperature","value":"9"},{"name":"Apparent Wind Chill Temperature","value":"10"},{"name":"Theoretical Wind Chill Temperature","value":"11"},{"name":"Heat Index Temperature","value":"12"},{"name":"Freezer Temperature","value":"13"},{"name":"Exhaust Gas Temperature","value":"14"}]},{"Order":4,"Id":"actualTemperature","Name":"Actual Temperature","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":5,"Id":"setTemperature","Name":"Set Temperature","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false}]},{"PGN":130313,"Id":"humidity","Description":"Humidity","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"source","Name":"Source","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Inside","value":"0"},{"name":"Outside","value":"1"}]},{"Order":4,"Id":"actualHumidity","Name":"Actual Humidity","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"%","Resolution":"0.004","Signed":true},{"Order":5,"Id":"setHumidity","Name":"Set Humidity","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"%","Resolution":"0.004","Signed":true}]},{"PGN":130314,"Id":"actualPressure","Description":"Actual Pressure","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"source","Name":"Source","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Atmospheric","value":"0"},{"name":"Water","value":"1"},{"name":"Steam","value":"2"},{"name":"Compressed Air","value":"3"},{"name":"Hydraulic","value":"4"}]},{"Order":4,"Id":"pressure","Name":"Pressure","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"dPa","Type":"Pressure (hires)","Resolution":"0.1","Signed":true}]},{"PGN":130315,"Id":"setPressure","Description":"Set Pressure","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"source","Name":"Source","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Atmospheric","value":"0"},{"name":"Water","value":"1"},{"name":"Steam","value":"2"},{"name":"Compressed Air","value":"3"},{"name":"Hydraulic","value":"4"}]},{"Order":4,"Id":"pressure","Name":"Pressure","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"dPa","Type":"Pressure (hires)","Resolution":"0.1","Signed":false}]},{"PGN":130316,"Id":"temperatureExtendedRange","Description":"Temperature Extended Range","Type":"Single","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":3,"Id":"source","Name":"Source","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Sea Temperature","value":"0"},{"name":"Outside Temperature","value":"1"},{"name":"Inside Temperature","value":"2"},{"name":"Engine Room Temperature","value":"3"},{"name":"Main Cabin Temperature","value":"4"},{"name":"Live Well Temperature","value":"5"},{"name":"Bait Well Temperature","value":"6"},{"name":"Refridgeration Temperature","value":"7"},{"name":"Heating System Temperature","value":"8"},{"name":"Dew Point Temperature","value":"9"},{"name":"Apparent Wind Chill Temperature","value":"10"},{"name":"Theoretical Wind Chill Temperature","value":"11"},{"name":"Heat Index Temperature","value":"12"},{"name":"Freezer Temperature","value":"13"},{"name":"Exhaust Gas Temperature","value":"14"}]},{"Order":4,"Id":"temperature","Name":"Temperature","BitLength":24,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature (hires)","Resolution":"0.001","Signed":false},{"Order":5,"Id":"setTemperature","Name":"Set Temperature","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.1","Signed":false}]},{"PGN":130320,"Id":"tideStationData","Description":"Tide Station Data","Type":"Fast","Complete":true,"Length":20,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"mode","Name":"Mode","BitLength":4,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Autonomous","value":"0"},{"name":"Differential enhanced","value":"1"},{"name":"Estimated","value":"2"},{"name":"Simulator","value":"3"},{"name":"Manual","value":"4"}]},{"Order":2,"Id":"tideTendency","Name":"Tide Tendency","BitLength":2,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Falling","value":"0"},{"name":"Rising","value":"1"}]},{"Order":3,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":4,"Id":"measurementDate","Name":"Measurement Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":5,"Id":"measurementTime","Name":"Measurement Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":6,"Id":"stationLatitude","Name":"Station Latitude","BitLength":32,"BitOffset":56,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":7,"Id":"stationLongitude","Name":"Station Longitude","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":8,"Id":"tideLevel","Name":"Tide Level","Description":"Relative to MLLW","BitLength":16,"BitOffset":120,"BitStart":0,"Units":"m","Resolution":"0.001","Signed":true},{"Order":9,"Id":"tideLevelStandardDeviation","Name":"Tide Level standard deviation","BitLength":16,"BitOffset":136,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":10,"Id":"stationId","Name":"Station ID","BitLength":16,"BitOffset":152,"BitStart":0,"Type":"String with start/stop byte","Signed":false},{"Order":11,"Id":"stationName","Name":"Station Name","BitLength":16,"BitOffset":168,"BitStart":0,"Type":"String with start/stop byte","Signed":false}]},{"PGN":130321,"Id":"salinityStationData","Description":"Salinity Station Data","Type":"Fast","Complete":false,"Missing":["SampleData"],"Length":22,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"mode","Name":"Mode","BitLength":4,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Autonomous","value":"0"},{"name":"Differential enhanced","value":"1"},{"name":"Estimated","value":"2"},{"name":"Simulator","value":"3"},{"name":"Manual","value":"4"}]},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":3,"Id":"measurementDate","Name":"Measurement Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":4,"Id":"measurementTime","Name":"Measurement Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"stationLatitude","Name":"Station Latitude","BitLength":32,"BitOffset":56,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"stationLongitude","Name":"Station Longitude","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":7,"Id":"salinity","Name":"Salinity","Description":"The average Salinity of ocean water is about 35 grams of salts per kilogram of sea water (g/kg), usually written as 35 ppt which is read as 35 parts per thousand.","BitLength":32,"BitOffset":120,"BitStart":0,"Units":"ppt","Type":"IEEE Float","Signed":true},{"Order":8,"Id":"waterTemperature","Name":"Water Temperature","BitLength":16,"BitOffset":152,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":9,"Id":"stationId","Name":"Station ID","BitLength":16,"BitOffset":168,"BitStart":0,"Type":"String with start/stop byte","Signed":false},{"Order":10,"Id":"stationName","Name":"Station Name","BitLength":16,"BitOffset":184,"BitStart":0,"Type":"String with start/stop byte","Signed":false}]},{"PGN":130322,"Id":"currentStationData","Description":"Current Station Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"mode","Name":"Mode","BitLength":4,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":3,"Id":"measurementDate","Name":"Measurement Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":4,"Id":"measurementTime","Name":"Measurement Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"stationLatitude","Name":"Station Latitude","BitLength":32,"BitOffset":56,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"stationLongitude","Name":"Station Longitude","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":7,"Id":"measurementDepth","Name":"Measurement Depth","Description":"Depth below transducer","BitLength":32,"BitOffset":120,"BitStart":0,"Units":"m","Resolution":"0.01","Signed":false},{"Order":8,"Id":"currentSpeed","Name":"Current speed","BitLength":16,"BitOffset":152,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":9,"Id":"currentFlowDirection","Name":"Current flow direction","BitLength":16,"BitOffset":168,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"waterTemperature","Name":"Water Temperature","BitLength":16,"BitOffset":184,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":11,"Id":"stationId","Name":"Station ID","BitLength":16,"BitOffset":200,"BitStart":0,"Type":"String with start/stop byte","Signed":false},{"Order":12,"Id":"stationName","Name":"Station Name","BitLength":16,"BitOffset":216,"BitStart":0,"Type":"String with start/stop byte","Signed":false}]},{"PGN":130323,"Id":"meteorologicalStationData","Description":"Meteorological Station Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":30,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"mode","Name":"Mode","BitLength":4,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":3,"Id":"measurementDate","Name":"Measurement Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":4,"Id":"measurementTime","Name":"Measurement Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"stationLatitude","Name":"Station Latitude","BitLength":32,"BitOffset":56,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"stationLongitude","Name":"Station Longitude","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":7,"Id":"windSpeed","Name":"Wind Speed","BitLength":16,"BitOffset":120,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":8,"Id":"windDirection","Name":"Wind Direction","BitLength":16,"BitOffset":136,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":9,"Id":"windReference","Name":"Wind Reference","BitLength":3,"BitOffset":152,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True (ground referenced to North)","value":"0"},{"name":"Magnetic (ground referenced to Magnetic North)","value":"1"},{"name":"Apparent","value":"2"},{"name":"True (boat referenced)","value":"3"},{"name":"True (water referenced)","value":"4"}]},{"Order":10,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":5,"BitOffset":155,"BitStart":3,"Units":null,"Type":"Binary data","Signed":false},{"Order":11,"Id":"windGusts","Name":"Wind Gusts","BitLength":16,"BitOffset":160,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":12,"Id":"atmosphericPressure","Name":"Atmospheric Pressure","BitLength":16,"BitOffset":176,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":13,"Id":"ambientTemperature","Name":"Ambient Temperature","BitLength":16,"BitOffset":192,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":14,"Id":"stationId","Name":"Station ID","BitLength":16,"BitOffset":208,"BitStart":0,"Type":"String with start/stop byte","Signed":false},{"Order":15,"Id":"stationName","Name":"Station Name","BitLength":16,"BitOffset":224,"BitStart":0,"Type":"String with start/stop byte","Signed":false}]},{"PGN":130324,"Id":"mooredBuoyStationData","Description":"Moored Buoy Station Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"mode","Name":"Mode","BitLength":4,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":3,"Id":"measurementDate","Name":"Measurement Date","Description":"Days since January 1, 1970","BitLength":16,"BitOffset":8,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":4,"Id":"measurementTime","Name":"Measurement Time","Description":"Seconds since midnight","BitLength":32,"BitOffset":24,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":5,"Id":"stationLatitude","Name":"Station Latitude","BitLength":32,"BitOffset":56,"BitStart":0,"Units":"deg","Type":"Latitude","Resolution":"0.0000001","Signed":true},{"Order":6,"Id":"stationLongitude","Name":"Station Longitude","BitLength":32,"BitOffset":88,"BitStart":0,"Units":"deg","Type":"Longitude","Resolution":"0.0000001","Signed":true},{"Order":7,"Id":"windSpeed","Name":"Wind Speed","BitLength":16,"BitOffset":120,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":8,"Id":"windDirection","Name":"Wind Direction","BitLength":16,"BitOffset":136,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":9,"Id":"windReference","Name":"Wind Reference","BitLength":3,"BitOffset":152,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True (ground referenced to North)","value":"0"},{"name":"Magnetic (ground referenced to Magnetic North)","value":"1"},{"name":"Apparent","value":"2"},{"name":"True (boat referenced)","value":"3"},{"name":"True (water referenced)","value":"4"}]},{"Order":10,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":5,"BitOffset":155,"BitStart":3,"Units":null,"Type":"Binary data","Signed":false},{"Order":11,"Id":"windGusts","Name":"Wind Gusts","BitLength":16,"BitOffset":160,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":12,"Id":"waveHeight","Name":"Wave Height","BitLength":16,"BitOffset":176,"BitStart":0,"Signed":false},{"Order":13,"Id":"dominantWavePeriod","Name":"Dominant Wave Period","BitLength":16,"BitOffset":192,"BitStart":0,"Signed":false},{"Order":14,"Id":"atmosphericPressure","Name":"Atmospheric Pressure","BitLength":16,"BitOffset":208,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":15,"Id":"pressureTendencyRate","Name":"Pressure Tendency Rate","BitLength":16,"BitOffset":224,"BitStart":0,"Units":null,"Signed":false},{"Order":16,"Id":"airTemperature","Name":"Air Temperature","BitLength":16,"BitOffset":240,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":17,"Id":"waterTemperature","Name":"Water Temperature","BitLength":16,"BitOffset":256,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":18,"Id":"stationId","Name":"Station ID","BitLength":64,"BitOffset":272,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130560,"Id":"payloadMass","Description":"Payload Mass","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":0,"RepeatingFields":0},{"PGN":130567,"Id":"watermakerInputSettingAndStatus","Description":"Watermaker Input Setting and Status","Type":"Fast","Complete":true,"Length":24,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"watermakerOperatingState","Name":"Watermaker Operating State","BitLength":6,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Stopped","value":"0"},{"name":"Starting","value":"1"},{"name":"Running","value":"2"},{"name":"Stopping","value":"3"},{"name":"Flushing","value":"4"},{"name":"Rinsing","value":"5"},{"name":"Initiating","value":"6"},{"name":"Manual Mode","value":"7"},{"name":"Error","value":"62"},{"name":"Unavailable","value":"63"}]},{"Order":2,"Id":"productionStartStop","Name":"Production Start/Stop","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":3,"Id":"rinseStartStop","Name":"Rinse Start/Stop","BitLength":2,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":4,"Id":"lowPressurePumpStatus","Name":"Low Pressure Pump Status","BitLength":2,"BitOffset":10,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":5,"Id":"highPressurePumpStatus","Name":"High Pressure Pump Status","BitLength":2,"BitOffset":12,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":6,"Id":"emergencyStop","Name":"Emergency Stop","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":7,"Id":"productSolenoidValveStatus","Name":"Product Solenoid Valve Status","BitLength":2,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"OK","value":"0"},{"name":"Warning","value":"1"}]},{"Order":8,"Id":"flushModeStatus","Name":"Flush Mode Status","BitLength":2,"BitOffset":18,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":9,"Id":"salinityStatus","Name":"Salinity Status","BitLength":2,"BitOffset":20,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"OK","value":"0"},{"name":"Warning","value":"1"}]},{"Order":10,"Id":"sensorStatus","Name":"Sensor Status","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"OK","value":"0"},{"name":"Warning","value":"1"}]},{"Order":11,"Id":"oilChangeIndicatorStatus","Name":"Oil Change Indicator Status","BitLength":2,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"OK","value":"0"},{"name":"Warning","value":"1"}]},{"Order":12,"Id":"filterStatus","Name":"Filter Status","BitLength":2,"BitOffset":26,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"OK","value":"0"},{"name":"Warning","value":"1"}]},{"Order":13,"Id":"systemStatus","Name":"System Status","BitLength":2,"BitOffset":28,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"OK","value":"0"},{"name":"Warning","value":"1"}]},{"Order":14,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":2,"BitOffset":30,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":15,"Id":"salinity","Name":"Salinity","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"ppm","Type":"Integer","Resolution":1,"Signed":false},{"Order":16,"Id":"productWaterTemperature","Name":"Product Water Temperature","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":17,"Id":"preFilterPressure","Name":"Pre-filter Pressure","BitLength":16,"BitOffset":64,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":18,"Id":"postFilterPressure","Name":"Post-filter Pressure","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"hPa","Type":"Pressure","Signed":false},{"Order":19,"Id":"feedPressure","Name":"Feed Pressure","BitLength":16,"BitOffset":96,"BitStart":0,"Units":"kPa","Type":"Pressure","Signed":true},{"Order":20,"Id":"systemHighPressure","Name":"System High Pressure","BitLength":16,"BitOffset":112,"BitStart":0,"Units":"kPa","Type":"Pressure","Signed":false},{"Order":21,"Id":"productWaterFlow","Name":"Product Water Flow","BitLength":16,"BitOffset":128,"BitStart":0,"Units":"L/h","Resolution":"0.1","Signed":true},{"Order":22,"Id":"brineWaterFlow","Name":"Brine Water Flow","BitLength":16,"BitOffset":144,"BitStart":0,"Units":"L/h","Resolution":"0.1","Signed":true},{"Order":23,"Id":"runTime","Name":"Run Time","BitLength":32,"BitOffset":160,"BitStart":0,"Units":"s","Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130569,"Id":"currentStatusAndFile","Description":"Current Status and File","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":233,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"zone","Name":"Zone","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All zones","value":"0"},{"name":"Zone 1","value":"1"},{"name":"Zone 2","value":"2"},{"name":"Zone 3","value":"3"},{"name":"Zone 4","value":"4"}]},{"Order":2,"Id":"source","Name":"Source","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Vessel alarm","value":"0"},{"name":"AM","value":"1"},{"name":"FM","value":"2"},{"name":"Weather","value":"3"},{"name":"DAB","value":"4"},{"name":"Aux","value":"5"},{"name":"USB","value":"6"},{"name":"CD","value":"7"},{"name":"MP3","value":"8"},{"name":"Apple iOS","value":"9"},{"name":"Android","value":"10"},{"name":"Bluetooth","value":"11"},{"name":"Sirius XM","value":"12"},{"name":"Pandora","value":"13"},{"name":"Spotify","value":"14"},{"name":"Slacker","value":"15"},{"name":"Songza","value":"16"},{"name":"Apple Radio","value":"17"},{"name":"Last FM","value":"18"},{"name":"Ethernet","value":"19"},{"name":"Video MP4","value":"20"},{"name":"Video DVD","value":"21"},{"name":"Video BluRay","value":"22"},{"name":"HDMI","value":"23"},{"name":"Video","value":"24"}]},{"Order":3,"Id":"number","Name":"Number","Description":"Source number per type","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"id","Name":"ID","Description":"Unique file ID","BitLength":32,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"playStatus","Name":"Play status","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Play","value":"0"},{"name":"Pause","value":"1"},{"name":"Stop","value":"2"},{"name":"FF (1x)","value":"3"},{"name":"FF (2x)","value":"4"},{"name":"FF (3x)","value":"5"},{"name":"FF (4x)","value":"6"},{"name":"RW (1x)","value":"7"},{"name":"RW (2x)","value":"8"},{"name":"RW (3x)","value":"9"},{"name":"RW (4x)","value":"10"},{"name":"Skip ahead","value":"11"},{"name":"Skip back","value":"12"},{"name":"Jog ahead","value":"13"},{"name":"Jog back","value":"14"},{"name":"Seek up","value":"15"},{"name":"Seek down","value":"16"},{"name":"Scan up","value":"17"},{"name":"Scan down","value":"18"},{"name":"Tune up","value":"19"},{"name":"Tune down","value":"20"},{"name":"Slow motion (.75x)","value":"21"},{"name":"Slow motion (.5x)","value":"22"},{"name":"Slow motion (.25x)","value":"23"},{"name":"Slow motion (.125x)","value":"24"},{"name":"Source renaming","value":"25"}]},{"Order":6,"Id":"elapsedTrackTime","Name":"Elapsed Track Time","BitLength":16,"BitOffset":64,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":7,"Id":"trackTime","Name":"Track Time","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":8,"Id":"repeatStatus","Name":"Repeat Status","BitLength":4,"BitOffset":96,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"One","value":"1"},{"name":"All","value":"2"}]},{"Order":9,"Id":"shuffleStatus","Name":"Shuffle Status","BitLength":4,"BitOffset":100,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"Play queue","value":"1"},{"name":"All","value":"2"}]},{"Order":10,"Id":"saveFavoriteNumber","Name":"Save Favorite Number","Description":"Used to command AV to save current station as favorite","BitLength":8,"BitOffset":104,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"playFavoriteNumber","Name":"Play Favorite Number","Description":"Used to command AV to play indicated favorite station","BitLength":16,"BitOffset":112,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"thumbsUpDown","Name":"Thumbs Up/Down","BitLength":8,"BitOffset":128,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":13,"Id":"signalStrength","Name":"Signal Strength","BitLength":8,"BitOffset":136,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":false},{"Order":14,"Id":"radioFrequency","Name":"Radio Frequency","BitLength":32,"BitOffset":144,"BitStart":0,"Units":"Hz","Resolution":10,"Signed":false},{"Order":15,"Id":"hdFrequencyMulticast","Name":"HD Frequency Multicast","Description":"Digital sub channel","BitLength":8,"BitOffset":176,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":16,"Id":"deleteFavoriteNumber","Name":"Delete Favorite Number","Description":"Used to command AV to delete current station as favorite","BitLength":8,"BitOffset":184,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":17,"Id":"totalNumberOfTracks","Name":"Total Number of Tracks","BitLength":16,"BitOffset":192,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130570,"Id":"libraryDataFile","Description":"Library Data File","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":233,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"source","Name":"Source","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Vessel alarm","value":"0"},{"name":"AM","value":"1"},{"name":"FM","value":"2"},{"name":"Weather","value":"3"},{"name":"DAB","value":"4"},{"name":"Aux","value":"5"},{"name":"USB","value":"6"},{"name":"CD","value":"7"},{"name":"MP3","value":"8"},{"name":"Apple iOS","value":"9"},{"name":"Android","value":"10"},{"name":"Bluetooth","value":"11"},{"name":"Sirius XM","value":"12"},{"name":"Pandora","value":"13"},{"name":"Spotify","value":"14"},{"name":"Slacker","value":"15"},{"name":"Songza","value":"16"},{"name":"Apple Radio","value":"17"},{"name":"Last FM","value":"18"},{"name":"Ethernet","value":"19"},{"name":"Video MP4","value":"20"},{"name":"Video DVD","value":"21"},{"name":"Video BluRay","value":"22"},{"name":"HDMI","value":"23"},{"name":"Video","value":"24"}]},{"Order":2,"Id":"number","Name":"Number","Description":"Source number per type","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"id","Name":"ID","Description":"Unique file ID","BitLength":32,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"type","Name":"Type","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"File","value":"0"},{"name":"Playlist Name","value":"1"},{"name":"Genre Name","value":"2"},{"name":"Album Name","value":"3"},{"name":"Artist Name","value":"4"},{"name":"Track Name","value":"5"},{"name":"Station Name","value":"6"},{"name":"Station Number","value":"7"},{"name":"Favourite Number","value":"8"},{"name":"Play Queue","value":"9"},{"name":"Content Info","value":"10"}]},{"Order":5,"Id":"name","Name":"Name","BitLength":16,"BitOffset":56,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":6,"Id":"track","Name":"Track","BitLength":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"station","Name":"Station","BitLength":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"favorite","Name":"Favorite","BitLength":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"radioFrequency","Name":"Radio frequency","BitLength":32,"BitStart":0,"Units":"Hz","Resolution":10,"Signed":false},{"Order":10,"Id":"hdFrequency","Name":"HD Frequency","BitLength":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"zone","Name":"Zone","BitLength":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All zones","value":"0"},{"name":"Zone 1","value":"1"},{"name":"Zone 2","value":"2"},{"name":"Zone 3","value":"3"},{"name":"Zone 4","value":"4"}]},{"Order":12,"Id":"inPlayQueue","Name":"In play queue","BitLength":2,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":13,"Id":"lockStatus","Name":"Lock status","Description":"Sirius XM only","BitLength":2,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Unlocked","value":"0"},{"name":"Locked","value":"1"}]},{"Order":14,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":15,"Id":"artist","Name":"Artist","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":16,"Id":"album","Name":"Album","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":17,"Id":"station","Name":"Station","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":130571,"Id":"libraryDataGroup","Description":"Library Data Group","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":233,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"source","Name":"Source","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Vessel alarm","value":"0"},{"name":"AM","value":"1"},{"name":"FM","value":"2"},{"name":"Weather","value":"3"},{"name":"DAB","value":"4"},{"name":"Aux","value":"5"},{"name":"USB","value":"6"},{"name":"CD","value":"7"},{"name":"MP3","value":"8"},{"name":"Apple iOS","value":"9"},{"name":"Android","value":"10"},{"name":"Bluetooth","value":"11"},{"name":"Sirius XM","value":"12"},{"name":"Pandora","value":"13"},{"name":"Spotify","value":"14"},{"name":"Slacker","value":"15"},{"name":"Songza","value":"16"},{"name":"Apple Radio","value":"17"},{"name":"Last FM","value":"18"},{"name":"Ethernet","value":"19"},{"name":"Video MP4","value":"20"},{"name":"Video DVD","value":"21"},{"name":"Video BluRay","value":"22"},{"name":"HDMI","value":"23"},{"name":"Video","value":"24"}]},{"Order":2,"Id":"number","Name":"Number","Description":"Source number per type","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"zone","Name":"Zone","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All zones","value":"0"},{"name":"Zone 1","value":"1"},{"name":"Zone 2","value":"2"},{"name":"Zone 3","value":"3"},{"name":"Zone 4","value":"4"}]},{"Order":4,"Id":"groupId","Name":"Group ID","Description":"Unique group ID","BitLength":32,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"idOffset","Name":"ID offset","Description":"First ID in this PGN","BitLength":16,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"idCount","Name":"ID count","Description":"Number of IDs in this PGN","BitLength":16,"BitOffset":72,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"totalIdCount","Name":"Total ID count","Description":"Total IDs in group","BitLength":16,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"idType","Name":"ID type","BitLength":8,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Group","value":"0"},{"name":"File","value":"1"},{"name":"Encrypted group","value":"2"},{"name":"Encrypted file","value":"3"}]},{"Order":9,"Id":"id","Name":"ID","BitLength":32,"BitOffset":112,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"name","Name":"Name","BitLength":16,"BitOffset":144,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":130572,"Id":"libraryDataSearch","Description":"Library Data Search","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":233,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"source","Name":"Source","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Vessel alarm","value":"0"},{"name":"AM","value":"1"},{"name":"FM","value":"2"},{"name":"Weather","value":"3"},{"name":"DAB","value":"4"},{"name":"Aux","value":"5"},{"name":"USB","value":"6"},{"name":"CD","value":"7"},{"name":"MP3","value":"8"},{"name":"Apple iOS","value":"9"},{"name":"Android","value":"10"},{"name":"Bluetooth","value":"11"},{"name":"Sirius XM","value":"12"},{"name":"Pandora","value":"13"},{"name":"Spotify","value":"14"},{"name":"Slacker","value":"15"},{"name":"Songza","value":"16"},{"name":"Apple Radio","value":"17"},{"name":"Last FM","value":"18"},{"name":"Ethernet","value":"19"},{"name":"Video MP4","value":"20"},{"name":"Video DVD","value":"21"},{"name":"Video BluRay","value":"22"},{"name":"HDMI","value":"23"},{"name":"Video","value":"24"}]},{"Order":2,"Id":"number","Name":"Number","Description":"Source number per type","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"groupId","Name":"Group ID","Description":"Unique group ID","BitLength":32,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"groupType1","Name":"Group type 1","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"File","value":"0"},{"name":"Playlist Name","value":"1"},{"name":"Genre Name","value":"2"},{"name":"Album Name","value":"3"},{"name":"Artist Name","value":"4"},{"name":"Track Name","value":"5"},{"name":"Station Name","value":"6"},{"name":"Station Number","value":"7"},{"name":"Favourite Number","value":"8"},{"name":"Play Queue","value":"9"},{"name":"Content Info","value":"10"}]},{"Order":5,"Id":"groupName1","Name":"Group name 1","BitLength":16,"BitOffset":56,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":6,"Id":"groupType2","Name":"Group type 2","BitLength":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"File","value":"0"},{"name":"Playlist Name","value":"1"},{"name":"Genre Name","value":"2"},{"name":"Album Name","value":"3"},{"name":"Artist Name","value":"4"},{"name":"Track Name","value":"5"},{"name":"Station Name","value":"6"},{"name":"Station Number","value":"7"},{"name":"Favourite Number","value":"8"},{"name":"Play Queue","value":"9"},{"name":"Content Info","value":"10"}]},{"Order":7,"Id":"groupName2","Name":"Group name 2","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":8,"Id":"groupType3","Name":"Group type 3","BitLength":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"File","value":"0"},{"name":"Playlist Name","value":"1"},{"name":"Genre Name","value":"2"},{"name":"Album Name","value":"3"},{"name":"Artist Name","value":"4"},{"name":"Track Name","value":"5"},{"name":"Station Name","value":"6"},{"name":"Station Number","value":"7"},{"name":"Favourite Number","value":"8"},{"name":"Play Queue","value":"9"},{"name":"Content Info","value":"10"}]},{"Order":9,"Id":"groupName3","Name":"Group name 3","BitLength":16,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":130573,"Id":"supportedSourceData","Description":"Supported Source Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":233,"RepeatingFields":10,"Fields":[{"Order":1,"Id":"idOffset","Name":"ID offset","Description":"First ID in this PGN","BitLength":16,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"idCount","Name":"ID count","Description":"Number of IDs in this PGN","BitLength":16,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"totalIdCount","Name":"Total ID count","Description":"Total IDs in group","BitLength":16,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"id","Name":"ID","Description":"Source ID","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"source","Name":"Source","BitLength":8,"BitOffset":56,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Vessel alarm","value":"0"},{"name":"AM","value":"1"},{"name":"FM","value":"2"},{"name":"Weather","value":"3"},{"name":"DAB","value":"4"},{"name":"Aux","value":"5"},{"name":"USB","value":"6"},{"name":"CD","value":"7"},{"name":"MP3","value":"8"},{"name":"Apple iOS","value":"9"},{"name":"Android","value":"10"},{"name":"Bluetooth","value":"11"},{"name":"Sirius XM","value":"12"},{"name":"Pandora","value":"13"},{"name":"Spotify","value":"14"},{"name":"Slacker","value":"15"},{"name":"Songza","value":"16"},{"name":"Apple Radio","value":"17"},{"name":"Last FM","value":"18"},{"name":"Ethernet","value":"19"},{"name":"Video MP4","value":"20"},{"name":"Video DVD","value":"21"},{"name":"Video BluRay","value":"22"},{"name":"HDMI","value":"23"},{"name":"Video","value":"24"}]},{"Order":6,"Id":"number","Name":"Number","Description":"Source number per type","BitLength":8,"BitOffset":64,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"name","Name":"Name","BitLength":16,"BitOffset":72,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":8,"Id":"playSupport","Name":"Play support","BitLength":16,"BitStart":0,"Type":"Bitfield","Signed":false,"EnumBitValues":[{"0":"Play"},{"1":"Pause"},{"2":"Stop"},{"3":"FF (1x)"},{"4":"FF (2x)"},{"5":"FF (3x)"},{"6":"FF (4x)"},{"7":"RW (1x)"},{"8":"RW (2x)"},{"9":"RW (3x)"},{"10":"RW (4x)"},{"11":"Skip ahead"},{"12":"Skip back"},{"13":"Jog ahead"},{"14":"Jog back"},{"15":"Seek up"},{"16":"Seek down"},{"17":"Scan up"},{"18":"Scan down"},{"19":"Tune up"},{"20":"Tune down"},{"21":"Slow motion (.75x)"},{"22":"Slow motion (.5x)"},{"23":"Slow motion (.25x)"},{"24":"Slow motion (.125x)"},{"25":"Source renaming"}]},{"Order":9,"Id":"browseSupport","Name":"Browse support","BitLength":16,"BitStart":0,"Type":"Bitfield","Signed":false,"EnumBitValues":[{"0":"File"},{"1":"Playlist Name"},{"2":"Genre Name"},{"3":"Album Name"},{"4":"Artist Name"},{"5":"Track Name"},{"6":"Station Name"},{"7":"Station Number"},{"8":"Favourite Number"},{"9":"Play Queue"},{"10":"Content Info"}]},{"Order":10,"Id":"thumbsSupport","Name":"Thumbs support","BitLength":2,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":11,"Id":"connected","Name":"Connected","BitLength":2,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":12,"Id":"repeatSupport","Name":"Repeat support","BitLength":2,"BitStart":4,"Type":"Bitfield","Signed":false,"EnumBitValues":[{"1":"Song"},{"2":"Play Queue"}]},{"Order":13,"Id":"shuffleSupport","Name":"Shuffle support","BitLength":2,"BitStart":6,"Type":"Bitfield","Signed":false,"EnumBitValues":[{"1":"Play Queue"},{"2":"All"}]}]},{"PGN":130574,"Id":"supportedZoneData","Description":"Supported Zone Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":233,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"firstZoneId","Name":"First zone ID","Description":"First Zone in this PGN","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"zoneCount","Name":"Zone count","Description":"Number of Zones in this PGN","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"totalZoneCount","Name":"Total zone count","Description":"Total Zones supported by this device","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"zoneId","Name":"Zone ID","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All zones","value":"0"},{"name":"Zone 1","value":"1"},{"name":"Zone 2","value":"2"},{"name":"Zone 3","value":"3"},{"name":"Zone 4","value":"4"}]},{"Order":5,"Id":"name","Name":"Name","BitLength":16,"BitOffset":32,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":130576,"Id":"smallCraftStatus","Description":"Small Craft Status","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":2,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"portTrimTab","Name":"Port trim tab","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":true},{"Order":2,"Id":"starboardTrimTab","Name":"Starboard trim tab","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":true}]},{"PGN":130577,"Id":"directionData","Description":"Direction Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"dataMode","Name":"Data Mode","BitLength":4,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Autonomous","value":"0"},{"name":"Differential enhanced","value":"1"},{"name":"Estimated","value":"2"},{"name":"Simulator","value":"3"},{"name":"Manual","value":"4"}]},{"Order":2,"Id":"cogReference","Name":"COG Reference","BitLength":2,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"True","value":"0"},{"name":"Magnetic","value":"1"},{"name":"Error","value":"2"},{"name":"Null","value":"3"}]},{"Order":3,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":2,"BitOffset":6,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":8,"BitStart":0,"Signed":false},{"Order":5,"Id":"cog","Name":"COG","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":6,"Id":"sog","Name":"SOG","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":7,"Id":"heading","Name":"Heading","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":8,"Id":"speedThroughWater","Name":"Speed through Water","BitLength":16,"BitOffset":64,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false},{"Order":9,"Id":"set","Name":"Set","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"drift","Name":"Drift","BitLength":16,"BitOffset":96,"BitStart":0,"Units":"m/s","Resolution":"0.01","Signed":false}]},{"PGN":130578,"Id":"vesselSpeedComponents","Description":"Vessel Speed Components","Type":"Fast","Complete":true,"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"longitudinalSpeedWaterReferenced","Name":"Longitudinal Speed, Water-referenced","BitLength":16,"BitOffset":0,"BitStart":0,"Units":"m/s","Resolution":"0.001","Signed":true},{"Order":2,"Id":"transverseSpeedWaterReferenced","Name":"Transverse Speed, Water-referenced","BitLength":16,"BitOffset":16,"BitStart":0,"Units":"m/s","Resolution":"0.001","Signed":true},{"Order":3,"Id":"longitudinalSpeedGroundReferenced","Name":"Longitudinal Speed, Ground-referenced","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"m/s","Resolution":"0.001","Signed":true},{"Order":4,"Id":"transverseSpeedGroundReferenced","Name":"Transverse Speed, Ground-referenced","BitLength":16,"BitOffset":48,"BitStart":0,"Units":"m/s","Resolution":"0.001","Signed":true},{"Order":5,"Id":"sternSpeedWaterReferenced","Name":"Stern Speed, Water-referenced","BitLength":16,"BitOffset":64,"BitStart":0,"Units":"m/s","Resolution":"0.001","Signed":true},{"Order":6,"Id":"sternSpeedGroundReferenced","Name":"Stern Speed, Ground-referenced","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"m/s","Resolution":"0.001","Signed":true}]},{"PGN":130579,"Id":"systemConfiguration","Description":"System Configuration","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"power","Name":"Power","BitLength":2,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":2,"Id":"defaultSettings","Name":"Default Settings","BitLength":2,"BitOffset":2,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Save current settings as user default","value":"0"},{"name":"Load user default","value":"1"},{"name":"Load Manufacturer default","value":"2"}]},{"Order":3,"Id":"tunerRegions","Name":"Tuner regions","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"USA","value":"0"},{"name":"Europe","value":"1"},{"name":"Asia","value":"2"},{"name":"Middle East","value":"3"},{"name":"Latin America","value":"4"},{"name":"Australia","value":"5"},{"name":"Russia","value":"6"},{"name":"Japan","value":"7"}]},{"Order":4,"Id":"maxFavorites","Name":"Max favorites","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"videoProtocols","Name":"Video protocols","BitLength":4,"BitOffset":16,"BitStart":0,"Type":"Bitfield","Signed":false,"EnumBitValues":[{"0":"PAL"},{"1":"NTSC"}]},{"Order":6,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":44,"BitOffset":20,"BitStart":4,"Type":"Binary data","Signed":false}]},{"PGN":130580,"Id":"systemConfigurationDeprecated","Description":"System Configuration (deprecated)","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":2,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"power","Name":"Power","BitLength":2,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":2,"Id":"defaultSettings","Name":"Default Settings","BitLength":2,"BitOffset":2,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Save current settings as user default","value":"0"},{"name":"Load user default","value":"1"},{"name":"Load Manufacturer default","value":"2"}]},{"Order":3,"Id":"tunerRegions","Name":"Tuner regions","BitLength":4,"BitOffset":4,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"USA","value":"0"},{"name":"Europe","value":"1"},{"name":"Asia","value":"2"},{"name":"Middle East","value":"3"},{"name":"Latin America","value":"4"},{"name":"Australia","value":"5"},{"name":"Russia","value":"6"},{"name":"Japan","value":"7"}]},{"Order":4,"Id":"maxFavorites","Name":"Max favorites","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130581,"Id":"zoneConfigurationDeprecated","Description":"Zone Configuration (deprecated)","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":14,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"firstZoneId","Name":"First zone ID","Description":"First Zone in this PGN","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"zoneCount","Name":"Zone count","Description":"Number of Zones in this PGN","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"totalZoneCount","Name":"Total zone count","Description":"Total Zones supported by this device","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"zoneId","Name":"Zone ID","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All zones","value":"0"},{"name":"Zone 1","value":"1"},{"name":"Zone 2","value":"2"},{"name":"Zone 3","value":"3"},{"name":"Zone 4","value":"4"}]},{"Order":5,"Id":"zoneName","Name":"Zone name","BitLength":16,"BitOffset":32,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":130582,"Id":"zoneVolume","Description":"Zone Volume","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":4,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"zoneId","Name":"Zone ID","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All zones","value":"0"},{"name":"Zone 1","value":"1"},{"name":"Zone 2","value":"2"},{"name":"Zone 3","value":"3"},{"name":"Zone 4","value":"4"}]},{"Order":2,"Id":"volume","Name":"Volume","BitLength":8,"BitOffset":8,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"volumeChange","Name":"Volume change","Description":"Write only","BitLength":2,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Up","value":"0"},{"name":"Down","value":"1"}]},{"Order":4,"Id":"mute","Name":"Mute","BitLength":2,"BitOffset":18,"BitStart":2,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":5,"Id":"reserved","Name":"Reserved","Description":"Reserved","BitLength":4,"BitOffset":20,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":6,"Id":"channel","Name":"Channel","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All channels","value":"0"},{"name":"Stereo full range","value":"1"},{"name":"Stereo front","value":"2"},{"name":"Stereo back","value":"3"},{"name":"Stereo surround","value":"4"},{"name":"Center","value":"5"},{"name":"Subwoofer","value":"6"},{"name":"Front left","value":"7"},{"name":"Front right","value":"8"},{"name":"Back left","value":"9"},{"name":"Back right","value":"10"},{"name":"Surround left","value":"11"},{"name":"Surround right","value":"12"}]}]},{"PGN":130583,"Id":"availableAudioEqPresets","Description":"Available Audio EQ presets","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":233,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"firstPreset","Name":"First preset","Description":"First preset in this PGN","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"presetCount","Name":"Preset count","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"totalPresetCount","Name":"Total preset count","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"presetType","Name":"Preset type","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Flat","value":"0"},{"name":"Rock","value":"1"},{"name":"Hall","value":"2"},{"name":"Jazz","value":"3"},{"name":"Pop","value":"4"},{"name":"Live","value":"5"},{"name":"Classic","value":"6"},{"name":"Vocal","value":"7"},{"name":"Arena","value":"8"},{"name":"Cinema","value":"9"},{"name":"Custom","value":"10"}]},{"Order":5,"Id":"presetName","Name":"Preset name","BitLength":16,"BitOffset":32,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false}]},{"PGN":130584,"Id":"availableBluetoothAddresses","Description":"Available Bluetooth addresses","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":233,"RepeatingFields":3,"Fields":[{"Order":1,"Id":"firstAddress","Name":"First address","Description":"First address in this PGN","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"addressCount","Name":"Address count","BitLength":8,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"totalAddressCount","Name":"Total address count","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"bluetoothAddress","Name":"Bluetooth address","BitLength":48,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"status","Name":"Status","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Connected","value":"0"},{"name":"Not connected","value":"1"},{"name":"Not paired","value":"2"}]},{"Order":6,"Id":"deviceName","Name":"Device name","BitLength":16,"BitOffset":80,"BitStart":0,"Type":"ASCII or UNICODE string starting with length and control byte","Signed":false},{"Order":7,"Id":"signalStrength","Name":"Signal strength","BitLength":8,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130585,"Id":"bluetoothSourceStatus","Description":"Bluetooth source status","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":233,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sourceNumber","Name":"Source number","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"status","Name":"Status","BitLength":4,"BitOffset":8,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Reserved","value":"0"},{"name":"Connected","value":"1"},{"name":"Connecting","value":"2"},{"name":"Not connected","value":"3"}]},{"Order":3,"Id":"forgetDevice","Name":"Forget device","BitLength":2,"BitOffset":12,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":4,"Id":"discovering","Name":"Discovering","BitLength":2,"BitOffset":14,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"No","value":"0"},{"name":"Yes","value":"1"},{"name":"Error","value":"10"},{"name":"Unavailable","value":"11"}]},{"Order":5,"Id":"bluetoothAddress","Name":"Bluetooth address","BitLength":48,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130586,"Id":"zoneConfiguration","Description":"Zone Configuration","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":14,"RepeatingFields":2,"Fields":[{"Order":1,"Id":"zoneId","Name":"Zone ID","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All zones","value":"0"},{"name":"Zone 1","value":"1"},{"name":"Zone 2","value":"2"},{"name":"Zone 3","value":"3"},{"name":"Zone 4","value":"4"}]},{"Order":2,"Id":"volumeLimit","Name":"Volume limit","BitLength":8,"BitOffset":8,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"fade","Name":"Fade","BitLength":8,"BitOffset":16,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true},{"Order":4,"Id":"balance","Name":"Balance","BitLength":8,"BitOffset":24,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true},{"Order":5,"Id":"subVolume","Name":"Sub volume","BitLength":8,"BitOffset":32,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true},{"Order":6,"Id":"eqTreble","Name":"EQ - Treble","BitLength":8,"BitOffset":40,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true},{"Order":7,"Id":"eqMidRange","Name":"EQ - Mid range","BitLength":8,"BitOffset":48,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true},{"Order":8,"Id":"eqBass","Name":"EQ - Bass","BitLength":8,"BitOffset":56,"BitStart":0,"Units":"%","Type":"Integer","Resolution":1,"Signed":true},{"Order":9,"Id":"presetType","Name":"Preset type","BitLength":8,"BitOffset":64,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Flat","value":"0"},{"name":"Rock","value":"1"},{"name":"Hall","value":"2"},{"name":"Jazz","value":"3"},{"name":"Pop","value":"4"},{"name":"Live","value":"5"},{"name":"Classic","value":"6"},{"name":"Vocal","value":"7"},{"name":"Arena","value":"8"},{"name":"Cinema","value":"9"},{"name":"Custom","value":"10"}]},{"Order":10,"Id":"audioFilter","Name":"Audio filter","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Full range","value":"0"},{"name":"High pass","value":"1"},{"name":"Low pass","value":"2"},{"name":"Band pass","value":"3"},{"name":"Notch filter","value":"4"}]},{"Order":11,"Id":"highPassFilterFrequency","Name":"High pass filter frequency","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"Hz","Type":"Integer","Resolution":1,"Signed":false},{"Order":12,"Id":"lowPassFilterFrequency","Name":"Low pass filter frequency","BitLength":16,"BitOffset":96,"BitStart":0,"Units":"Hz","Type":"Integer","Resolution":1,"Signed":false},{"Order":13,"Id":"channel","Name":"Channel","BitLength":8,"BitOffset":112,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"All channels","value":"0"},{"name":"Stereo full range","value":"1"},{"name":"Stereo front","value":"2"},{"name":"Stereo back","value":"3"},{"name":"Stereo surround","value":"4"},{"name":"Center","value":"5"},{"name":"Subwoofer","value":"6"},{"name":"Front left","value":"7"},{"name":"Front right","value":"8"},{"name":"Back left","value":"9"},{"name":"Back right","value":"10"},{"name":"Surround left","value":"11"},{"name":"Surround right","value":"12"}]}]},{"PGN":130816,"Id":"sonichubInit2","Description":"SonicHub: Init #2","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Init #2","BitLength":8,"BitOffset":24,"BitStart":0,"Match":1,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"a","Name":"A","BitLength":16,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"b","Name":"B","BitLength":16,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130816,"Id":"sonichubAmRadio","Description":"SonicHub: AM Radio","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"AM Radio","BitLength":8,"BitOffset":24,"BitStart":0,"Match":4,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Seeking up","value":"1"},{"name":"Tuned","value":"2"},{"name":"Seeking down","value":"3"}]},{"Order":8,"Id":"frequency","Name":"Frequency","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"kHz","Resolution":"0.001","Signed":false},{"Order":9,"Id":"noiseLevel","Name":"Noise level","BitLength":2,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":10,"Id":"signalLevel","Name":"Signal level","BitLength":4,"BitOffset":82,"BitStart":2,"Signed":false},{"Order":11,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":86,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":12,"Id":"text","Name":"Text","BitLength":256,"BitOffset":88,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130816,"Id":"sonichubZoneInfo","Description":"SonicHub: Zone info","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Zone info","BitLength":8,"BitOffset":24,"BitStart":0,"Match":5,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"zone","Name":"Zone","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130816,"Id":"sonichubSource","Description":"SonicHub: Source","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Source","BitLength":8,"BitOffset":24,"BitStart":0,"Match":6,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"source","Name":"Source","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"AM","value":"0"},{"name":"FM","value":"1"},{"name":"iPod","value":"2"},{"name":"USB","value":"3"},{"name":"AUX","value":"4"},{"name":"AUX 2","value":"5"},{"name":"Mic","value":"6"}]}]},{"PGN":130816,"Id":"sonichubSourceList","Description":"SonicHub: Source List","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Source list","BitLength":8,"BitOffset":24,"BitStart":0,"Match":8,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"sourceId","Name":"Source ID","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"a","Name":"A","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"text","Name":"Text","BitLength":256,"BitOffset":56,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130816,"Id":"sonichubControl","Description":"SonicHub: Control","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Control","BitLength":8,"BitOffset":24,"BitStart":0,"Match":9,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Mute on","value":"1"},{"name":"Mute off","value":"2"}]}]},{"PGN":130816,"Id":"sonichubUnknown","Description":"SonicHub: Unknown","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Unknown","BitLength":8,"BitOffset":24,"BitStart":0,"Match":9,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"a","Name":"A","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"b","Name":"B","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130816,"Id":"sonichubFmRadio","Description":"SonicHub: FM Radio","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"FM Radio","BitLength":8,"BitOffset":24,"BitStart":0,"Match":12,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Seeking up","value":"1"},{"name":"Tuned","value":"2"},{"name":"Seeking down","value":"3"}]},{"Order":8,"Id":"frequency","Name":"Frequency","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"kHz","Resolution":"0.001","Signed":false},{"Order":9,"Id":"noiseLevel","Name":"Noise level","BitLength":2,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":10,"Id":"signalLevel","Name":"Signal level","BitLength":4,"BitOffset":82,"BitStart":2,"Signed":false},{"Order":11,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":86,"BitStart":6,"Type":"Binary data","Signed":false},{"Order":12,"Id":"text","Name":"Text","BitLength":256,"BitOffset":88,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130816,"Id":"sonichubPlaylist","Description":"SonicHub: Playlist","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Playlist","BitLength":8,"BitOffset":24,"BitStart":0,"Match":13,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Report","value":"1"},{"name":"Next Song","value":"4"},{"name":"Previous Song","value":"6"}]},{"Order":8,"Id":"a","Name":"A","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"currentTrack","Name":"Current Track","BitLength":32,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"tracks","Name":"Tracks","BitLength":32,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"length","Name":"Length","BitLength":32,"BitOffset":120,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false},{"Order":12,"Id":"positionInTrack","Name":"Position in track","BitLength":32,"BitOffset":152,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false}]},{"PGN":130816,"Id":"sonichubTrack","Description":"SonicHub: Track","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Track","BitLength":8,"BitOffset":24,"BitStart":0,"Match":14,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":32,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"text","Name":"Text","BitLength":256,"BitOffset":72,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130816,"Id":"sonichubArtist","Description":"SonicHub: Artist","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Artist","BitLength":8,"BitOffset":24,"BitStart":0,"Match":15,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":32,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"text","Name":"Text","BitLength":256,"BitOffset":72,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130816,"Id":"sonichubAlbum","Description":"SonicHub: Album","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Album","BitLength":8,"BitOffset":24,"BitStart":0,"Match":16,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":32,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"text","Name":"Text","BitLength":256,"BitOffset":72,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130816,"Id":"sonichubMenuItem","Description":"SonicHub: Menu Item","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Menu Item","BitLength":8,"BitOffset":24,"BitStart":0,"Match":19,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"item","Name":"Item","BitLength":32,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"c","Name":"C","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":9,"Id":"d","Name":"D","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":10,"Id":"e","Name":"E","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":11,"Id":"text","Name":"Text","BitLength":256,"BitOffset":96,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130816,"Id":"sonichubZones","Description":"SonicHub: Zones","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Zones","BitLength":8,"BitOffset":24,"BitStart":0,"Match":20,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"zones","Name":"Zones","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130816,"Id":"sonichubMaxVolume","Description":"SonicHub: Max Volume","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Max Volume","BitLength":8,"BitOffset":24,"BitStart":0,"Match":23,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"zone","Name":"Zone","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Zone 1","value":"0"},{"name":"Zone 2","value":"1"},{"name":"Zone 3","value":"2"}]},{"Order":8,"Id":"level","Name":"Level","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130816,"Id":"sonichubVolume","Description":"SonicHub: Volume","Type":"Fast","Complete":true,"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Volume","BitLength":8,"BitOffset":24,"BitStart":0,"Match":24,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"zone","Name":"Zone","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Zone 1","value":"0"},{"name":"Zone 2","value":"1"},{"name":"Zone 3","value":"2"}]},{"Order":8,"Id":"level","Name":"Level","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130816,"Id":"sonichubInit1","Description":"SonicHub: Init #1","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Init #1","BitLength":8,"BitOffset":24,"BitStart":0,"Match":25,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]}]},{"PGN":130816,"Id":"sonichubPosition","Description":"SonicHub: Position","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Position","BitLength":8,"BitOffset":24,"BitStart":0,"Match":48,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"position","Name":"Position","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false}]},{"PGN":130816,"Id":"sonichubInit3","Description":"SonicHub: Init #3","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Init #3","BitLength":8,"BitOffset":24,"BitStart":0,"Match":50,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"control","Name":"Control","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Set","value":"0"},{"name":"Ack","value":"128"}]},{"Order":7,"Id":"a","Name":"A","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":8,"Id":"b","Name":"B","BitLength":8,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130816,"Id":"simradTextMessage","Description":"Simrad: Text Message","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":64,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Resolution":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Init #3","BitLength":8,"BitOffset":24,"BitStart":0,"Match":50,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"a","Name":"A","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"b","Name":"B","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"c","Name":"C","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":10,"Id":"prio","Name":"Prio","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":11,"Id":"text","Name":"Text","BitLength":256,"BitOffset":72,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130816,"Id":"manufacturerProprietaryFastPacketNonAddressed","Description":"Manufacturer Proprietary fast-packet non-addressed","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":223,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":0,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","BitLength":3,"BitOffset":13,"BitStart":5,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Global","value":"0"},{"name":"Highway","value":"1"},{"name":"Agriculture","value":"2"},{"name":"Construction","value":"3"},{"name":"Marine","value":"4"},{"name":"Industrial","value":"5"}]},{"Order":4,"Id":"data","Name":"Data","BitLength":1768,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":130817,"Id":"navicoProductInformation","Description":"Navico: Product Information","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Navico","BitLength":11,"BitOffset":0,"BitStart":0,"Match":275,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"productCode","Name":"Product Code","BitLength":16,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"model","Name":"Model","BitLength":256,"BitOffset":32,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":6,"Id":"a","Name":"A","BitLength":8,"BitOffset":288,"BitStart":0,"Signed":false},{"Order":7,"Id":"b","Name":"B","BitLength":8,"BitOffset":296,"BitStart":0,"Signed":false},{"Order":8,"Id":"c","Name":"C","BitLength":8,"BitOffset":304,"BitStart":0,"Signed":false},{"Order":9,"Id":"firmwareVersion","Name":"Firmware version","BitLength":80,"BitOffset":312,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":10,"Id":"firmwareDate","Name":"Firmware date","BitLength":256,"BitOffset":392,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":11,"Id":"firmwareTime","Name":"Firmware time","BitLength":256,"BitOffset":648,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130818,"Id":"simnetReprogramData","Description":"Simnet: Reprogram Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":223,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"version","Name":"Version","BitLength":16,"BitOffset":16,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"sequence","Name":"Sequence","BitLength":16,"BitOffset":32,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"data","Name":"Data","BitLength":1736,"BitOffset":48,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":130819,"Id":"simnetRequestReprogram","Description":"Simnet: Request Reprogram","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130820,"Id":"simnetReprogramStatus","Description":"Simnet: Reprogram Status","Type":"Fast","Complete":false,"Missing":["FieldLengths","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"reserved","Name":"Reserved","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":5,"Id":"status","Name":"Status","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"reserved","Name":"Reserved","BitLength":24,"BitOffset":32,"BitStart":0,"Type":"Binary data","Signed":false}]},{"PGN":130820,"Id":"furunoUnknown","Description":"Furuno: Unknown","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Furuno","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1855,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"a","Name":"A","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"b","Name":"B","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"c","Name":"C","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"d","Name":"D","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"e","Name":"E","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false}]},{"PGN":130820,"Id":"fusionSourceName","Description":"Fusion: Source Name","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":13,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Source","BitLength":8,"BitOffset":16,"BitStart":0,"Match":2,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"sourceId","Name":"Source ID","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"currentSourceId","Name":"Current Source ID","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"d","Name":"D","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"e","Name":"E","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":10,"Id":"source","Name":"Source","BitLength":40,"BitOffset":64,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionTrackInfo","Description":"Fusion: Track Info","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":23,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Track Info","BitLength":8,"BitOffset":16,"BitStart":0,"Match":4,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":16,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"transport","Name":"Transport","BitLength":4,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Playing","value":"1"},{"name":"Paused","value":"2"}]},{"Order":7,"Id":"x","Name":"X","BitLength":4,"BitOffset":44,"BitStart":4,"Signed":false},{"Order":8,"Id":"b","Name":"B","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"track","Name":"Track #","BitLength":16,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":10,"Id":"c","Name":"C","BitLength":16,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":11,"Id":"trackCount","Name":"Track Count","BitLength":16,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":12,"Id":"e","Name":"E","BitLength":16,"BitOffset":104,"BitStart":0,"Signed":false},{"Order":13,"Id":"trackLength","Name":"Track Length","BitLength":24,"BitOffset":120,"BitStart":0,"Resolution":"0.001","Signed":false},{"Order":14,"Id":"g","Name":"G","BitLength":24,"BitOffset":144,"BitStart":0,"Resolution":"0.001","Signed":false},{"Order":15,"Id":"h","Name":"H","BitLength":16,"BitOffset":168,"BitStart":0,"Signed":false}]},{"PGN":130820,"Id":"fusionTrack","Description":"Fusion: Track","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Track Title","BitLength":8,"BitOffset":16,"BitStart":0,"Match":5,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":40,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"track","Name":"Track","BitLength":80,"BitOffset":72,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionArtist","Description":"Fusion: Artist","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Track Artist","BitLength":8,"BitOffset":16,"BitStart":0,"Match":6,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":40,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"artist","Name":"Artist","BitLength":80,"BitOffset":72,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionAlbum","Description":"Fusion: Album","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Track Album","BitLength":8,"BitOffset":16,"BitStart":0,"Match":7,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":40,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"album","Name":"Album","BitLength":80,"BitOffset":72,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionUnitName","Description":"Fusion: Unit Name","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Unit Name","BitLength":8,"BitOffset":16,"BitStart":0,"Match":33,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"name","Name":"Name","BitLength":112,"BitOffset":32,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionZoneName","Description":"Fusion: Zone Name","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Zone Name","BitLength":8,"BitOffset":16,"BitStart":0,"Match":45,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"number","Name":"Number","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"name","Name":"Name","BitLength":104,"BitOffset":40,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionPlayProgress","Description":"Fusion: Play Progress","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Track Progress","BitLength":8,"BitOffset":16,"BitStart":0,"Match":9,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"progress","Name":"Progress","BitLength":24,"BitOffset":40,"BitStart":0,"Units":"s","Resolution":"0.001","Signed":false}]},{"PGN":130820,"Id":"fusionAmFmStation","Description":"Fusion: AM/FM Station","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":10,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"AM/FM Station","BitLength":8,"BitOffset":16,"BitStart":0,"Match":11,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"amFm","Name":"AM/FM","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"AM","value":"0"},{"name":"FM","value":"1"}]},{"Order":7,"Id":"b","Name":"B","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"frequency","Name":"Frequency","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"Hz","Resolution":0.000001,"Signed":false},{"Order":9,"Id":"c","Name":"C","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":10,"Id":"track","Name":"Track","BitLength":80,"BitOffset":88,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionVhf","Description":"Fusion: VHF","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"VHF","BitLength":8,"BitOffset":16,"BitStart":0,"Match":12,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"channel","Name":"Channel","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"d","Name":"D","BitLength":24,"BitOffset":48,"BitStart":0,"Signed":false}]},{"PGN":130820,"Id":"fusionSquelch","Description":"Fusion: Squelch","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Squelch","BitLength":8,"BitOffset":16,"BitStart":0,"Match":13,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"squelch","Name":"Squelch","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false}]},{"PGN":130820,"Id":"fusionScan","Description":"Fusion: Scan","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":6,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Scan","BitLength":8,"BitOffset":16,"BitStart":0,"Match":14,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"scan","Name":"Scan","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"Scan","value":"1"}]}]},{"PGN":130820,"Id":"fusionMenuItem","Description":"Fusion: Menu Item","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":23,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Menu Item","BitLength":8,"BitOffset":16,"BitStart":0,"Match":17,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"line","Name":"Line","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"e","Name":"E","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"f","Name":"F","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":10,"Id":"g","Name":"G","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":11,"Id":"h","Name":"H","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":12,"Id":"i","Name":"I","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":13,"Id":"text","Name":"Text","BitLength":40,"BitOffset":88,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionReplay","Description":"Fusion: Replay","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":23,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Replay","BitLength":8,"BitOffset":16,"BitStart":0,"Match":20,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"mode","Name":"Mode","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"USB Repeat","value":"9"},{"name":"USB Shuffle","value":"10"},{"name":"iPod Repeat","value":"12"},{"name":"iPod Shuffle","value":"13"}]},{"Order":7,"Id":"c","Name":"C","BitLength":24,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"d","Name":"D","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":9,"Id":"e","Name":"E","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":10,"Id":"status","Name":"Status","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"One/Track","value":"1"},{"name":"All/Album","value":"2"}]},{"Order":11,"Id":"h","Name":"H","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":12,"Id":"i","Name":"I","BitLength":8,"BitOffset":96,"BitStart":0,"Signed":false},{"Order":13,"Id":"j","Name":"J","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":false}]},{"PGN":130820,"Id":"fusionMute","Description":"Fusion: Mute","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":5,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Mute","BitLength":8,"BitOffset":16,"BitStart":0,"Match":23,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"mute","Name":"Mute","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Muted","value":"1"},{"name":"Not Muted","value":"2"}]}]},{"PGN":130820,"Id":"fusionSubVolume","Description":"Fusion: Sub Volume","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Sub Volume","BitLength":8,"BitOffset":16,"BitStart":0,"Match":26,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"zone1","Name":"Zone 1","BitLength":8,"BitOffset":32,"BitStart":0,"Units":"vol","Signed":false},{"Order":7,"Id":"zone2","Name":"Zone 2","BitLength":8,"BitOffset":40,"BitStart":0,"Units":"vol","Signed":false},{"Order":8,"Id":"zone3","Name":"Zone 3","BitLength":8,"BitOffset":48,"BitStart":0,"Units":"vol","Signed":false},{"Order":9,"Id":"zone4","Name":"Zone 4","BitLength":8,"BitOffset":56,"BitStart":0,"Units":"vol","Signed":false}]},{"PGN":130820,"Id":"fusionTone","Description":"Fusion: Tone","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Tone","BitLength":8,"BitOffset":16,"BitStart":0,"Match":27,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"bass","Name":"Bass","BitLength":8,"BitOffset":40,"BitStart":0,"Units":"vol","Signed":true},{"Order":8,"Id":"mid","Name":"Mid","BitLength":8,"BitOffset":48,"BitStart":0,"Units":"vol","Signed":true},{"Order":9,"Id":"treble","Name":"Treble","BitLength":8,"BitOffset":56,"BitStart":0,"Units":"vol","Signed":true}]},{"PGN":130820,"Id":"fusionVolume","Description":"Fusion: Volume","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":10,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Volume","BitLength":8,"BitOffset":16,"BitStart":0,"Match":29,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"zone1","Name":"Zone 1","BitLength":8,"BitOffset":32,"BitStart":0,"Units":"vol","Signed":false},{"Order":7,"Id":"zone2","Name":"Zone 2","BitLength":8,"BitOffset":40,"BitStart":0,"Units":"vol","Signed":false},{"Order":8,"Id":"zone3","Name":"Zone 3","BitLength":8,"BitOffset":48,"BitStart":0,"Units":"vol","Signed":false},{"Order":9,"Id":"zone4","Name":"Zone 4","BitLength":8,"BitOffset":56,"BitStart":0,"Units":"vol","Signed":false}]},{"PGN":130820,"Id":"fusionPowerState","Description":"Fusion: Power State","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":5,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Power","BitLength":8,"BitOffset":16,"BitStart":0,"Match":32,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"state","Name":"State","BitLength":8,"BitOffset":32,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"On","value":"1"},{"name":"Off","value":"2"}]}]},{"PGN":130820,"Id":"fusionSiriusxmChannel","Description":"Fusion: SiriusXM Channel","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"SiriusXM Channel","BitLength":8,"BitOffset":16,"BitStart":0,"Match":36,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":32,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"channel","Name":"Channel","BitLength":96,"BitOffset":56,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionSiriusxmTitle","Description":"Fusion: SiriusXM Title","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"SiriusXM Title","BitLength":8,"BitOffset":16,"BitStart":0,"Match":37,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":32,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"title","Name":"Title","BitLength":96,"BitOffset":56,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionSiriusxmArtist","Description":"Fusion: SiriusXM Artist","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"SiriusXM Artist","BitLength":8,"BitOffset":16,"BitStart":0,"Match":38,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":32,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"artist","Name":"Artist","BitLength":96,"BitOffset":56,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130820,"Id":"fusionSiriusxmGenre","Description":"Fusion: SiriusXM Genre","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":32,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Fusion","BitLength":11,"BitOffset":0,"BitStart":0,"Match":419,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"SiriusXM Genre","BitLength":8,"BitOffset":16,"BitStart":0,"Match":40,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":32,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"genre","Name":"Genre","BitLength":96,"BitOffset":56,"BitStart":0,"Type":"ASCII string starting with length byte","Signed":false}]},{"PGN":130821,"Id":"furunoUnknown","Description":"Furuno: Unknown","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Furuno","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1855,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"a","Name":"A","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"c","Name":"C","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"d","Name":"D","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"e","Name":"E","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":10,"Id":"f","Name":"F","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":11,"Id":"g","Name":"G","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":12,"Id":"h","Name":"H","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":13,"Id":"i","Name":"I","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false}]},{"PGN":130824,"Id":"bGWindData","Description":"B&G: Wind data","Type":"Single","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"B&G","BitLength":11,"BitOffset":0,"BitStart":0,"Match":381,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"field4","Name":"Field 4","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"field5","Name":"Field 5","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"timestamp","Name":"Timestamp","Description":"Increasing field, what else can it be?","BitLength":32,"BitOffset":32,"BitStart":0,"Signed":false}]},{"PGN":130824,"Id":"maretronAnnunciator","Description":"Maretron: Annunciator","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Maretron","BitLength":11,"BitOffset":0,"BitStart":0,"Match":137,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"field4","Name":"Field 4","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"field5","Name":"Field 5","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"field6","Name":"Field 6","BitLength":16,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"field7","Name":"Field 7","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"field8","Name":"Field 8","BitLength":16,"BitOffset":56,"BitStart":0,"Signed":false}]},{"PGN":130827,"Id":"lowranceUnknown","Description":"Lowrance: unknown","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":10,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Lowrance","BitLength":11,"BitOffset":0,"BitStart":0,"Match":140,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"a","Name":"A","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"b","Name":"B","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"c","Name":"C","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"d","Name":"D","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"e","Name":"E","BitLength":16,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":9,"Id":"f","Name":"F","BitLength":16,"BitOffset":64,"BitStart":0,"Signed":false}]},{"PGN":130828,"Id":"simnetSetSerialNumber","Description":"Simnet: Set Serial Number","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130831,"Id":"suzukiEngineAndStorageDeviceConfig","Description":"Suzuki: Engine and Storage Device Config","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","BitLength":11,"BitOffset":0,"BitStart":0,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130832,"Id":"simnetFuelUsedHighResolution","Description":"Simnet: Fuel Used - High Resolution","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130834,"Id":"simnetEngineAndTankConfiguration","Description":"Simnet: Engine and Tank Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130835,"Id":"simnetSetEngineAndTankConfiguration","Description":"Simnet: Set Engine and Tank Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130836,"Id":"simnetFluidLevelSensorConfiguration","Description":"Simnet: Fluid Level Sensor Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"c","Name":"C","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"device","Name":"Device","BitLength":8,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"instance","Name":"Instance","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":7,"Id":"f","Name":"F","BitLength":4,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":8,"Id":"tankType","Name":"Tank type","BitLength":4,"BitOffset":44,"BitStart":4,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Fuel","value":"0"},{"name":"Water","value":"1"},{"name":"Gray water","value":"2"},{"name":"Live well","value":"3"},{"name":"Oil","value":"4"},{"name":"Black water","value":"5"}]},{"Order":9,"Id":"capacity","Name":"Capacity","BitLength":32,"BitOffset":48,"BitStart":0,"Resolution":"0.1","Signed":false},{"Order":10,"Id":"g","Name":"G","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":11,"Id":"h","Name":"H","BitLength":16,"BitOffset":88,"BitStart":0,"Signed":true},{"Order":12,"Id":"i","Name":"I","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":true}]},{"PGN":130836,"Id":"maretronProprietarySwitchStatusCounter","Description":"Maretron Proprietary Switch Status Counter","Type":"Fast","Complete":true,"Length":16,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Maretron","BitLength":11,"BitOffset":0,"BitStart":0,"Match":137,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"bankInstance","Name":"Bank Instance","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"indicatorNumber","Name":"Indicator Number","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"startDate","Name":"Start Date","Description":"Timestamp of last reset in Days since January 1, 1970","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":7,"Id":"startTime","Name":"Start Time","Description":"Timestamp of last reset Seconds since midnight","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":8,"Id":"offCounter","Name":"OFF Counter","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"onCounter","Name":"ON Counter","BitLength":8,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":10,"Id":"errorCounter","Name":"ERROR Counter","BitLength":8,"BitOffset":96,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":11,"Id":"switchStatus","Name":"Switch Status","BitLength":2,"BitOffset":104,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":12,"Id":"reserved","Name":"Reserved","BitLength":16,"BitOffset":106,"BitStart":2,"Signed":false}]},{"PGN":130837,"Id":"simnetFuelFlowTurbineConfiguration","Description":"Simnet: Fuel Flow Turbine Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130837,"Id":"maretronProprietarySwitchStatusTimer","Description":"Maretron Proprietary Switch Status Timer","Type":"Fast","Complete":true,"Length":23,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Maretron","BitLength":11,"BitOffset":0,"BitStart":0,"Match":137,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"bankInstance","Name":"Bank Instance","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"indicatorNumber","Name":"Indicator Number","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"startDate","Name":"Start Date","Description":"Timestamp of last reset in Days since January 1, 1970","BitLength":16,"BitOffset":32,"BitStart":0,"Units":"days","Type":"Date","Resolution":1,"Signed":false},{"Order":7,"Id":"startTime","Name":"Start Time","Description":"Timestamp of last reset Seconds since midnight","BitLength":32,"BitOffset":48,"BitStart":0,"Units":"s","Type":"Time","Resolution":"0.0001","Signed":false},{"Order":8,"Id":"accumulatedOffPeriod","Name":"Accumulated OFF Period","BitLength":32,"BitOffset":80,"BitStart":0,"Units":"seconds","Type":"Decimal encoded number","Signed":false},{"Order":9,"Id":"accumulatedOnPeriod","Name":"Accumulated ON Period","BitLength":32,"BitOffset":112,"BitStart":0,"Units":"seconds","Type":"Decimal encoded number","Signed":false},{"Order":10,"Id":"accumulatedErrorPeriod","Name":"Accumulated ERROR Period","BitLength":32,"BitOffset":144,"BitStart":0,"Units":"seconds","Type":"Decimal encoded number","Signed":false},{"Order":11,"Id":"switchStatus","Name":"Switch Status","BitLength":2,"BitOffset":176,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Off","value":"0"},{"name":"On","value":"1"},{"name":"Failed","value":"2"}]},{"Order":12,"Id":"reserved","Name":"Reserved","BitLength":6,"BitOffset":178,"BitStart":2,"Signed":false}]},{"PGN":130838,"Id":"simnetFluidLevelWarning","Description":"Simnet: Fluid Level Warning","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130839,"Id":"simnetPressureSensorConfiguration","Description":"Simnet: Pressure Sensor Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130840,"Id":"simnetDataUserGroupConfiguration","Description":"Simnet: Data User Group Configuration","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130842,"Id":"simnetAisClassBStaticDataMsg24PartA","Description":"Simnet: AIS Class B static data (msg 24 Part A)","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":29,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Msg 24 Part A","BitLength":6,"BitOffset":16,"BitStart":0,"Match":0,"Signed":false},{"Order":5,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":6,"Id":"d","Name":"D","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":7,"Id":"e","Name":"E","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":8,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"name","Name":"Name","BitLength":160,"BitOffset":72,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130842,"Id":"simnetAisClassBStaticDataMsg24PartB","Description":"Simnet: AIS Class B static data (msg 24 Part B)","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":37,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","Description":"Msg 24 Part B","BitLength":6,"BitOffset":16,"BitStart":0,"Match":1,"Signed":false},{"Order":5,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":6,"Id":"d","Name":"D","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":7,"Id":"e","Name":"E","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":8,"Id":"userId","Name":"User ID","BitLength":32,"BitOffset":40,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"typeOfShip","Name":"Type of ship","BitLength":8,"BitOffset":72,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"unavailable","value":"0"},{"name":"Wing In Ground","value":"20"},{"name":"Wing In Ground (no other information)","value":"29"},{"name":"Fishing","value":"30"},{"name":"Towing","value":"31"},{"name":"Towing exceeds 200m or wider than 25m","value":"32"},{"name":"Engaged in dredging or underwater operations","value":"33"},{"name":"Engaged in diving operations","value":"34"},{"name":"Engaged in military operations","value":"35"},{"name":"Sailing","value":"36"},{"name":"Pleasure","value":"37"},{"name":"High speed craft","value":"40"},{"name":"High speed craft carrying dangerous goods","value":"41"},{"name":"High speed craft hazard cat B","value":"42"},{"name":"High speed craft hazard cat C","value":"43"},{"name":"High speed craft hazard cat D","value":"44"},{"name":"High speed craft (no additional information)","value":"49"},{"name":"Pilot vessel","value":"50"},{"name":"SAR","value":"51"},{"name":"Tug","value":"52"},{"name":"Port tender","value":"53"},{"name":"Anti-pollution","value":"54"},{"name":"Law enforcement","value":"55"},{"name":"Spare","value":"56"},{"name":"Spare #2","value":"57"},{"name":"Medical","value":"58"},{"name":"RR Resolution No.18","value":"59"},{"name":"Passenger ship","value":"60"},{"name":"Passenger ship (no additional information)","value":"69"},{"name":"Cargo ship","value":"70"},{"name":"Cargo ship carrying dangerous goods","value":"71"},{"name":"Cargo ship hazard cat B","value":"72"},{"name":"Cargo ship hazard cat C","value":"73"},{"name":"Cargo ship hazard cat D","value":"74"},{"name":"Cargo ship (no additional information)","value":"79"},{"name":"Tanker","value":"80"},{"name":"Tanker carrying dangerous goods","value":"81"},{"name":"Tanker hazard cat B","value":"82"},{"name":"Tanker hazard cat C","value":"83"},{"name":"Tanker hazard cat D","value":"84"},{"name":"Tanker (no additional information)","value":"89"},{"name":"Other","value":"90"},{"name":"Other carrying dangerous goods","value":"91"},{"name":"Other hazard cat B","value":"92"},{"name":"Other hazard cat C","value":"93"},{"name":"Other hazard cat D","value":"94"},{"name":"Other (no additional information)","value":"99"}]},{"Order":10,"Id":"vendorId","Name":"Vendor ID","BitLength":56,"BitOffset":80,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":11,"Id":"callsign","Name":"Callsign","BitLength":56,"BitOffset":136,"BitStart":0,"Type":"ASCII text","Signed":false},{"Order":12,"Id":"length","Name":"Length","BitLength":16,"BitOffset":192,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":13,"Id":"beam","Name":"Beam","BitLength":16,"BitOffset":208,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":14,"Id":"positionReferenceFromStarboard","Name":"Position reference from Starboard","BitLength":16,"BitOffset":224,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":15,"Id":"positionReferenceFromBow","Name":"Position reference from Bow","BitLength":16,"BitOffset":240,"BitStart":0,"Units":"m","Resolution":"0.1","Signed":false},{"Order":16,"Id":"mothershipUserId","Name":"Mothership User ID","Description":"Id of mother ship sent by daughter vessels","BitLength":32,"BitOffset":256,"BitStart":0,"Units":"MMSI","Type":"Integer","Resolution":1,"Signed":false},{"Order":17,"Id":"reserved","Name":"Reserved","Description":"reserved","BitLength":2,"BitOffset":288,"BitStart":0,"Type":"Binary data","Signed":false},{"Order":18,"Id":"spare","Name":"Spare","BitLength":6,"BitOffset":290,"BitStart":2,"Type":"Integer","Resolution":1,"Signed":false}]},{"PGN":130843,"Id":"simnetSonarStatusFrequencyAndDspVoltage","Description":"Simnet: Sonar Status, Frequency and DSP Voltage","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false}]},{"PGN":130845,"Id":"simnetCompassHeadingOffset","Description":"Simnet: Compass Heading Offset","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":6,"Id":"unused","Name":"Unused","BitLength":24,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":7,"Id":"type","Name":"Type","Description":"Heading Offset","BitLength":16,"BitOffset":48,"BitStart":0,"Match":0,"Signed":false},{"Order":8,"Id":"a","Name":"A","BitLength":16,"BitOffset":64,"BitStart":0,"Resolution":0,"Signed":false},{"Order":9,"Id":"angle","Name":"Angle","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":10,"Id":"unused","Name":"Unused","BitLength":16,"BitOffset":96,"BitStart":0,"Resolution":0,"Signed":false}]},{"PGN":130845,"Id":"simnetCompassLocalField","Description":"Simnet: Compass Local Field","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":6,"Id":"unused","Name":"Unused","BitLength":24,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":7,"Id":"type","Name":"Type","Description":"Local field","BitLength":16,"BitOffset":48,"BitStart":0,"Match":768,"Signed":false},{"Order":8,"Id":"a","Name":"A","BitLength":16,"BitOffset":64,"BitStart":0,"Resolution":0,"Signed":false},{"Order":9,"Id":"localField","Name":"Local field","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"%","Resolution":"0.004","Signed":false},{"Order":10,"Id":"unused","Name":"Unused","BitLength":16,"BitOffset":96,"BitStart":0,"Resolution":0,"Signed":false}]},{"PGN":130845,"Id":"simnetCompassFieldAngle","Description":"Simnet: Compass Field Angle","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":6,"Id":"unused","Name":"Unused","BitLength":24,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":7,"Id":"type","Name":"Type","Description":"Local field","BitLength":16,"BitOffset":48,"BitStart":0,"Match":1024,"Signed":false},{"Order":8,"Id":"a","Name":"A","BitLength":16,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":9,"Id":"fieldAngle","Name":"Field angle","BitLength":16,"BitOffset":80,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":true},{"Order":10,"Id":"unused","Name":"Unused","BitLength":16,"BitOffset":96,"BitStart":0,"Resolution":0,"Signed":false}]},{"PGN":130845,"Id":"simnetParameterHandle","Description":"Simnet: Parameter Handle","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","BitLength":6,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"repeatIndicator","Name":"Repeat indicator","BitLength":2,"BitOffset":22,"BitStart":6,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Initial","value":"0"},{"name":"First retransmission","value":"1"},{"name":"Second retransmission","value":"2"},{"name":"Final retransmission","value":"3"}]},{"Order":6,"Id":"d","Name":"D","BitLength":8,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":7,"Id":"group","Name":"Group","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":8,"Id":"f","Name":"F","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":9,"Id":"g","Name":"G","BitLength":8,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":10,"Id":"h","Name":"H","BitLength":8,"BitOffset":56,"BitStart":0,"Signed":false},{"Order":11,"Id":"i","Name":"I","BitLength":8,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":12,"Id":"j","Name":"J","BitLength":8,"BitOffset":72,"BitStart":0,"Signed":false},{"Order":13,"Id":"backlight","Name":"Backlight","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Day Mode","value":"1"},{"name":"Night Mode","value":"4"},{"name":"Level 1","value":"11"},{"name":"Level 2","value":"22"},{"name":"Level 3","value":"33"},{"name":"Level 4","value":"44"},{"name":"Level 5","value":"55"},{"name":"Level 6","value":"66"},{"name":"Level 7","value":"77"},{"name":"Level 8","value":"88"},{"name":"Level 9","value":"99"}]},{"Order":14,"Id":"l","Name":"L","BitLength":16,"BitOffset":88,"BitStart":0,"Signed":false}]},{"PGN":130847,"Id":"seatalkNodeStatistics","Description":"SeaTalk: Node Statistics","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":0,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Raymarine","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1851,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"softwareRelease","Name":"Software Release","BitLength":16,"BitOffset":11,"BitStart":3,"Signed":false},{"Order":3,"Id":"developmentVersion","Name":"Development Version","BitLength":8,"BitOffset":27,"BitStart":3,"Signed":false},{"Order":4,"Id":"productCode","Name":"Product Code","BitLength":16,"BitOffset":35,"BitStart":3,"Signed":false},{"Order":5,"Id":"year","Name":"Year","BitLength":8,"BitOffset":51,"BitStart":3,"Signed":false},{"Order":6,"Id":"month","Name":"Month","BitLength":8,"BitOffset":59,"BitStart":3,"Signed":false},{"Order":7,"Id":"deviceNumber","Name":"Device Number","BitLength":16,"BitOffset":67,"BitStart":3,"Signed":false},{"Order":8,"Id":"nodeVoltage","Name":"Node Voltage","BitLength":16,"BitOffset":83,"BitStart":3,"Units":"V","Resolution":"0.01","Signed":false}]},{"PGN":130850,"Id":"simnetEventCommandApCommand","Description":"Simnet: Event Command: AP command","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"AP command","BitLength":8,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[]},{"Order":5,"Id":"b","Name":"B","BitLength":16,"BitOffset":24,"BitStart":0,"Resolution":0,"Signed":false},{"Order":6,"Id":"controllingDevice","Name":"Controlling Device","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"event","Name":"Event","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Standby","value":"6"},{"name":"Auto mode","value":"9"},{"name":"Nav mode","value":"10"},{"name":"Non Follow Up mode","value":"13"},{"name":"Wind mode","value":"15"},{"name":"Square (Turn)","value":"18"},{"name":"C-Turn","value":"19"},{"name":"U-Turn","value":"20"},{"name":"Spiral (Turn)","value":"21"},{"name":"Zig Zag (Turn)","value":"22"},{"name":"Lazy-S (Turn)","value":"23"},{"name":"Depth (Turn)","value":"24"},{"name":"Change Course","value":"26"}]},{"Order":8,"Id":"direction","Name":"Direction","BitLength":8,"BitOffset":64,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Port","value":"2"},{"name":"Starboard","value":"3"},{"name":"Left rudder (port)","value":"4"},{"name":"Right rudder (starboard)","value":"5"}]},{"Order":9,"Id":"angle","Name":"Angle","BitLength":16,"BitOffset":72,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"g","Name":"G","BitLength":8,"BitOffset":88,"BitStart":0,"Resolution":0,"Signed":false}]},{"PGN":130850,"Id":"simnetEventCommandAlarm","Description":"Simnet: Event Command: Alarm?","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"a","Name":"A","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Alarm command","BitLength":8,"BitOffset":32,"BitStart":0,"Match":1,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"c","Name":"C","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"alarm","Name":"Alarm","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Raise","value":"57"},{"name":"Clear","value":"56"}]},{"Order":8,"Id":"messageId","Name":"Message ID","BitLength":16,"BitOffset":64,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":9,"Id":"f","Name":"F","BitLength":8,"BitOffset":80,"BitStart":0,"Signed":false},{"Order":10,"Id":"g","Name":"G","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false}]},{"PGN":130850,"Id":"simnetEventCommandUnknown","Description":"Simnet: Event Command: Unknown","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"a","Name":"A","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"proprietaryId","Name":"Proprietary ID","Description":"Alarm command","BitLength":8,"BitOffset":32,"BitStart":0,"Match":1,"Type":"Lookup table","Signed":false},{"Order":6,"Id":"b","Name":"B","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"c","Name":"C","BitLength":16,"BitOffset":48,"BitStart":0,"Signed":false},{"Order":8,"Id":"d","Name":"D","BitLength":16,"BitOffset":64,"BitStart":0,"Signed":false},{"Order":9,"Id":"e","Name":"E","BitLength":16,"BitOffset":80,"BitStart":0,"Signed":false}]},{"PGN":130851,"Id":"simnetEventReplyApCommand","Description":"Simnet: Event Reply: AP command","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":12,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"proprietaryId","Name":"Proprietary ID","Description":"AP command","BitLength":8,"BitOffset":16,"BitStart":0,"Match":2,"Type":"Lookup table","Signed":false},{"Order":5,"Id":"b","Name":"B","BitLength":16,"BitOffset":24,"BitStart":0,"Signed":false},{"Order":6,"Id":"controllingDevice","Name":"Controlling Device","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"event","Name":"Event","BitLength":16,"BitOffset":48,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Standby","value":"6"},{"name":"Auto mode","value":"9"},{"name":"Nav mode","value":"10"},{"name":"Non Follow Up mode","value":"13"},{"name":"Wind mode","value":"15"},{"name":"Square (Turn)","value":"18"},{"name":"C-Turn","value":"19"},{"name":"U-Turn","value":"20"},{"name":"Spiral (Turn)","value":"21"},{"name":"Zig Zag (Turn)","value":"22"},{"name":"Lazy-S (Turn)","value":"23"},{"name":"Depth (Turn)","value":"24"},{"name":"Change Course","value":"26"}]},{"Order":8,"Id":"direction","Name":"Direction","BitLength":8,"BitOffset":64,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Port","value":"2"},{"name":"Starboard","value":"3"},{"name":"Left rudder (port)","value":"4"},{"name":"Right rudder (starboard)","value":"5"}]},{"Order":9,"Id":"angle","Name":"Angle","BitLength":16,"BitOffset":72,"BitStart":0,"Units":"rad","Resolution":"0.0001","Signed":false},{"Order":10,"Id":"g","Name":"G","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false}]},{"PGN":130856,"Id":"simnetAlarmMessage","Description":"Simnet: Alarm Message","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Simrad","BitLength":11,"BitOffset":0,"BitStart":0,"Match":1857,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"messageId","Name":"Message ID","BitLength":16,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"b","Name":"B","BitLength":8,"BitOffset":32,"BitStart":0,"Signed":false},{"Order":6,"Id":"c","Name":"C","BitLength":8,"BitOffset":40,"BitStart":0,"Signed":false},{"Order":7,"Id":"text","Name":"Text","BitLength":2040,"BitOffset":48,"BitStart":0,"Type":"ASCII text","Signed":false}]},{"PGN":130880,"Id":"airmarAdditionalWeatherData","Description":"Airmar: Additional Weather Data","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":30,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"c","Name":"C","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"apparentWindchillTemperature","Name":"Apparent Windchill Temperature","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":6,"Id":"trueWindchillTemperature","Name":"True Windchill Temperature","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":7,"Id":"dewpoint","Name":"Dewpoint","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false}]},{"PGN":130881,"Id":"airmarHeaterControl","Description":"Airmar: Heater Control","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":9,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"c","Name":"C","BitLength":8,"BitOffset":16,"BitStart":0,"Signed":false},{"Order":5,"Id":"plateTemperature","Name":"Plate Temperature","BitLength":16,"BitOffset":24,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":6,"Id":"airTemperature","Name":"Air Temperature","BitLength":16,"BitOffset":40,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false},{"Order":7,"Id":"dewpoint","Name":"Dewpoint","BitLength":16,"BitOffset":56,"BitStart":0,"Units":"K","Type":"Temperature","Resolution":"0.01","Signed":false}]},{"PGN":130944,"Id":"airmarPost","Description":"Airmar: POST","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision","SampleData"],"Length":8,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"manufacturerCode","Name":"Manufacturer Code","Description":"Airmar","BitLength":11,"BitOffset":0,"BitStart":0,"Match":135,"Type":"Manufacturer code","Signed":false},{"Order":2,"Id":"reserved","Name":"Reserved","BitLength":2,"BitOffset":11,"BitStart":3,"Resolution":0,"Signed":false},{"Order":3,"Id":"industryCode","Name":"Industry Code","Description":"Marine Industry","BitLength":3,"BitOffset":13,"BitStart":5,"Match":4,"Type":"Lookup table","Signed":false},{"Order":4,"Id":"control","Name":"Control","BitLength":4,"BitOffset":16,"BitStart":0,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Report previous values","value":"0"},{"name":"Generate new values","value":"1"}]},{"Order":5,"Id":"reserved","Name":"Reserved","BitLength":7,"BitOffset":20,"BitStart":4,"Type":"Binary data","Signed":false},{"Order":6,"Id":"numberOfIdTestResultPairsToFollow","Name":"Number of ID/test result pairs to follow","BitLength":8,"BitOffset":27,"BitStart":3,"Type":"Integer","Resolution":1,"Signed":false},{"Order":7,"Id":"testId","Name":"Test ID","Description":"See Airmar docs for table of IDs and failure codes; these lookup values are for DST200","BitLength":8,"BitOffset":35,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Format Code","value":"1"},{"name":"Factory EEPROM","value":"2"},{"name":"User EEPROM","value":"3"},{"name":"Water Temp Sensor","value":"4"},{"name":"Sonar Transceiver","value":"5"},{"name":"Speed sensor","value":"6"},{"name":"Internal temperature sensor","value":"7"},{"name":"Battery voltage sensor","value":"8"}]},{"Order":8,"Id":"testResult","Name":"Test result","Description":"Values other than 0 are failure codes","BitLength":8,"BitOffset":43,"BitStart":3,"Type":"Lookup table","Signed":false,"EnumValues":[{"name":"Pass","value":"0"}]}]}]}')},function(e){e.exports=JSON.parse('{"Comment":"See https://github.com/canboat/canboat for the full source code","CreatorCode":"Canboat NMEA2000 Analyzer","License":"GPL v3","Version":"1.4.0-beta","PGNs":[{"PGN":262400,"Id":"ikonvertNetworkStatus","Description":"iKonvert: Network status","Type":"Fast","Complete":true,"Length":15,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"canNetworkLoad","Name":"CAN network load","BitLength":8,"BitOffset":0,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":2,"Id":"errors","Name":"Errors","BitLength":32,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"deviceCount","Name":"Device count","BitLength":8,"BitOffset":40,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"uptime","Name":"Uptime","Description":"s","BitLength":32,"BitOffset":48,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"gatewayAddress","Name":"Gateway address","BitLength":8,"BitOffset":80,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":6,"Id":"rejectedTxRequests","Name":"Rejected TX requests","BitLength":32,"BitOffset":88,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]}]}')},function(e){e.exports=JSON.parse('{"Comment":"See https://github.com/canboat/canboat for the full source code","CreatorCode":"Canboat NMEA2000 Analyzer","License":"GPL v3","Version":"1.4.0-beta","PGNs":[{"PGN":262161,"Id":"actisenseOperatingMode","Description":"Actisense: Operating mode","Type":"Single","Complete":true,"Length":14,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"modelId","Name":"Model ID","BitLength":16,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"serialId","Name":"Serial ID","BitLength":32,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"errorId","Name":"Error ID","BitLength":32,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"operatingMode","Name":"Operating Mode","BitLength":16,"BitOffset":88,"BitStart":0,"Signed":false}]},{"PGN":262384,"Id":"actisenseStartupStatus","Description":"Actisense: Startup status","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":15,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"modelId","Name":"Model ID","BitLength":16,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"serialId","Name":"Serial ID","BitLength":32,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"errorId","Name":"Error ID","BitLength":32,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"firmwareVersion","Name":"Firmware version","BitLength":16,"BitOffset":88,"BitStart":0,"Resolution":"0.001","Signed":false},{"Order":6,"Id":"resetStatus","Name":"Reset status","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":false},{"Order":7,"Id":"a","Name":"A","BitLength":8,"BitOffset":112,"BitStart":0,"Signed":false}]},{"PGN":262386,"Id":"actisenseSystemStatus","Description":"Actisense: System status","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":34,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"modelId","Name":"Model ID","BitLength":16,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"serialId","Name":"Serial ID","BitLength":32,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":4,"Id":"errorId","Name":"Error ID","BitLength":32,"BitOffset":56,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":5,"Id":"indiChannelCount","Name":"Indi channel count","BitLength":8,"BitOffset":88,"BitStart":0,"Signed":false},{"Order":6,"Id":"ch1RxBandwidth","Name":"Ch1 Rx Bandwidth","BitLength":8,"BitOffset":96,"BitStart":0,"Signed":false},{"Order":7,"Id":"ch1RxLoad","Name":"Ch1 Rx Load","BitLength":8,"BitOffset":104,"BitStart":0,"Signed":false},{"Order":8,"Id":"ch1RxFiltered","Name":"Ch1 Rx Filtered","BitLength":8,"BitOffset":112,"BitStart":0,"Signed":false},{"Order":9,"Id":"ch1RxDropped","Name":"Ch1 Rx Dropped","BitLength":8,"BitOffset":120,"BitStart":0,"Signed":false},{"Order":10,"Id":"ch1TxBandwidth","Name":"Ch1 Tx Bandwidth","BitLength":8,"BitOffset":128,"BitStart":0,"Signed":false},{"Order":11,"Id":"ch1TxLoad","Name":"Ch1 Tx Load","BitLength":8,"BitOffset":136,"BitStart":0,"Signed":false},{"Order":12,"Id":"ch2RxBandwidth","Name":"Ch2 Rx Bandwidth","BitLength":8,"BitOffset":144,"BitStart":0,"Signed":false},{"Order":13,"Id":"ch2RxLoad","Name":"Ch2 Rx Load","BitLength":8,"BitOffset":152,"BitStart":0,"Signed":false},{"Order":14,"Id":"ch2RxFiltered","Name":"Ch2 Rx Filtered","BitLength":8,"BitOffset":160,"BitStart":0,"Signed":false},{"Order":15,"Id":"ch2RxDropped","Name":"Ch2 Rx Dropped","BitLength":8,"BitOffset":168,"BitStart":0,"Signed":false},{"Order":16,"Id":"ch2TxBandwidth","Name":"Ch2 Tx Bandwidth","BitLength":8,"BitOffset":176,"BitStart":0,"Signed":false},{"Order":17,"Id":"ch2TxLoad","Name":"Ch2 Tx Load","BitLength":8,"BitOffset":184,"BitStart":0,"Signed":false},{"Order":18,"Id":"uniChannelCount","Name":"Uni channel count","BitLength":8,"BitOffset":192,"BitStart":0,"Signed":false},{"Order":19,"Id":"ch1Bandwidth","Name":"Ch1 Bandwidth","BitLength":8,"BitOffset":200,"BitStart":0,"Signed":false},{"Order":20,"Id":"ch1Deleted","Name":"Ch1 Deleted","BitLength":8,"BitOffset":208,"BitStart":0,"Signed":false},{"Order":21,"Id":"ch1Bufferloading","Name":"Ch1 BufferLoading","BitLength":8,"BitOffset":216,"BitStart":0,"Signed":false},{"Order":22,"Id":"ch1Pointerloading","Name":"Ch1 PointerLoading","BitLength":8,"BitOffset":224,"BitStart":0,"Signed":false},{"Order":23,"Id":"ch2Bandwidth","Name":"Ch2 Bandwidth","BitLength":8,"BitOffset":232,"BitStart":0,"Signed":false},{"Order":24,"Id":"ch2Deleted","Name":"Ch2 Deleted","BitLength":8,"BitOffset":240,"BitStart":0,"Signed":false},{"Order":25,"Id":"ch2Bufferloading","Name":"Ch2 BufferLoading","BitLength":8,"BitOffset":248,"BitStart":0,"Signed":false},{"Order":26,"Id":"ch2Pointerloading","Name":"Ch2 PointerLoading","BitLength":8,"BitOffset":256,"BitStart":0,"Signed":false}]},{"PGN":262388,"Id":"actisense","Description":"Actisense: ?","Type":"Fast","Complete":false,"Missing":["Fields","FieldLengths","Precision"],"Length":17,"RepeatingFields":0,"Fields":[{"Order":1,"Id":"sid","Name":"SID","BitLength":8,"BitOffset":0,"BitStart":0,"Signed":false},{"Order":2,"Id":"modelId","Name":"Model ID","BitLength":16,"BitOffset":8,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false},{"Order":3,"Id":"serialId","Name":"Serial ID","BitLength":32,"BitOffset":24,"BitStart":0,"Type":"Integer","Resolution":1,"Signed":false}]}]}')},function(e){e.exports=JSON.parse('{"AEM Power":735,"Actia":199,"Actisense - Active Research Ltd":273,"Advansea":578,"Aetna Engineering/Fireboy/Xintex":215,"Airmar":135,"Alltek Marine Electronics Corp":459,"Amphenol LTW Technology":274,"Aquatic AV":600,"Arlt Tecnologies":614,"Attwood Marine":502,"Au Electronics Group":735,"Autonnic":715,"Aventics GmbH":605,"B&G":381,"BEP Marine":295,"Bavaria Yacts":637,"Beede Instruments":185,"Beyond Measure":396,"Blue Water Data":148,"Blue Water Desalination":811,"Broyda Industries":795,"Böning Automationstechnologie GmbH & Co. KG":341,"CPAC Systems AB":165,"Camano Light":384,"Canadian Automotive":796,"Capi 2":394,"Carling Technologies Inc. (Moritz Aerospace)":176,"Chetco Digitial Instruments":481,"Clarion US":773,"Coelmo SRL Italy":286,"ComNav":404,"Comar Systems Limited":438,"Cummins":440,"DNA Group":211,"DaeMyung":743,"Dief":329,"Digital Switching Systems":211,"Digital Yacht":437,"DisenosY Technolgia":201,"Diverse Yacht Services":641,"EMMI NETWORK S.L.":224,"Egersund Marine Electronics AS":426,"Electronic Design":373,"Empir Bus":304,"Eride":243,"Evinrude/BRP":163,"FLIR":815,"FW Murphy/Enovation Controls":78,"Faria Instruments":1863,"Fell Marine":844,"Fischer Panda DE":785,"Fischer Panda Generators":356,"Floscan Instrument Co. Inc.":192,"Furuno":1855,"Fusion Electronics":419,"GME aka Standard Communications Pty LTD":475,"Garmin":229,"GeoNav":385,"Gill Sensors":803,"Glendinning":378,"Groco":272,"HMI Systems":776,"Hamilton Jet":283,"Hemisphere GPS Inc":88,"Honda Motor Company LTD":257,"Humminbird Marine Electronics":467,"ICOM":315,"Intellian":606,"JL Audio":740,"Japan Radio Co":1853,"Johnson Outdoors Marine Electronics Inc Geonav":385,"KUS Manufacturer":644,"KVH":579,"Kohler Power Systems":85,"Korean Maritime University":345,"Kvasar AB":1859,"Lcj Capteurs":499,"Litton":1858,"Livorsi Marine":400,"Lowarnce":140,"Lowrance":140,"Lumishore":798,"LxNav":739,"MBW Technologies (formerly MAS)":307,"MMP":1860,"Maretron":137,"Marinecraft (South Korea)":571,"Marinesoft Co. LTD":510,"Mastervolt":355,"McMurdo Group aka Orolia LTD":573,"Mercury Marine":144,"Moritz Aerospace":176,"Mystic Valley Communications":198,"National Instruments Korea":529,"Nautibus Electronic GmbH":147,"Navico":275,"Navionics":1852,"Naviop S.R.L.":503,"NoLand Engineering":517,"Nobletec":193,"Northstar Technologies":1854,"Nothern Lights":374,"NovAtel":305,"Ocean Sat BV":478,"Ocean Signal":777,"Oceanvolt":847,"Offshore Systems (UK) Ltd.":161,"Onwa Marine":532,"Parker Hannnifin aka Village Marine Tech":451,"Poly Planar":781,"Prospec":862,"Qwerty":328,"REAP Systems":734,"Raymarine":1851,"Rockford Corp":688,"Rolls Royce Marine":370,"Rose Point Navigation Systems":384,"SAN GIORGIO S.E.I.N":460,"SI-TEX Marine Electronics":470,"Sailormade Marine Telmetry/Tetra Technology LTD":235,"SamwonIT":612,"San Jose Technology":580,"Sea Cross Marine AB":471,"Sea Recovery":285,"Seekeeper":778,"Shenzhen Jiuzhou Himunication":658,"Ship Module aka Customware":595,"Simrad":1857,"Sleipner Motor AS":306,"Standard Horizon":421,"Still Water Designs and Audto":799,"Suzuki Motor Corporation":586,"TeamSurv":838,"Teleflex Marine (SeaStar Solutions)":1850,"Thrane and Thrane":351,"Tides Marine":797,"Tohatsu Co, JP":431,"Transas USA":518,"Trimble":1856,"True Heading AB":422,"Twin Disc":80,"US Coast Guard":591,"Undheim Systems":824,"VDO (aka Continental-Corporation)":443,"Vector Cantech":1861,"Veethree Electronics & Marine":466,"Vesper Marine Ltd":504,"Victron Energy":358,"Volvo Penta":174,"Watcheye":493,"Wema U.S.A dba KUS":644,"Westerbeke":154,"Woosung":744,"Xantrex Technology Inc.":168,"Xintex/Atena":215,"Yacht Control":583,"Yacht Devices":717,"Yacht Monitoring Solutions":233,"Yamaha Marine":1862,"Yanmar Marine":172,"ZF Marine Electronics":228,"em-trak Marine Electronics":427}')},function(e,t,n){(function(t){const{getField:r}=n(8),{pgns:i}=n(11),a=n(9),s=n(5).BitStream,o=n(3).Int64LE,{getPlainPGNs:d}=(n(3).Uint64LE,n(6)),{encodeActisense:u,encodeYDRAW:l,parseActisense:f,encodePCDIN:g,encodeMXPGN:c,encodePDGY:m}=n(13),{encodeCanId:p}=n(7),{getIndustryCode:B,getManufacturerCode:h}=n(12),S=n(4)("canboatjs:toPgn"),v="ASCII or UNICODE string starting with length and control byte";var O={},y={},I={129029:45,127257:8,127258:8,127251:8};function L(e){var n=i[e.pgn];if(!n)return void S("no pgn found: "+e.pgn);const r=e.pgn;var o=n[0];if(!(n.length>1&&e["Manufacturer Code"])||(o=n.find(t=>{let n=t.Fields.find(e=>"Manufacturer Code"===e.Name);return n&&n.Match&&n.Match==e["Manufacturer Code"]}))){var d=new s(t.alloc(500));e.fields&&(e=e.fields);var u=o.Fields;a.isArray(u)||(u=[u.Field]);for(var l=0;l<u.length-o.RepeatingFields;l++){var f=u[l],g=e[f.Name];a.isUndefined(f.Match)||(n=a.isString(g)?n.filter(e=>e.Fields[l].Description==g):n.filter(e=>e.Fields[l].Match==g)).length>0&&(o=n[0],g=o.Fields[l].Match,u=o.Fields),N(d,r,f,e,g)}e.list&&e.list.forEach(t=>{for(var n=0;n<o.RepeatingFields;n++){var i=u[o.Fields.length-o.RepeatingFields+n],a=t[i.Name];N(d,r,i,e,a)}});var c=8*d.byteIndex-d.index;if(c>0&&d.writeBits(65535,c),255!=o.Length&&u[u.length-1].Type!=v&&!o.RepeatingFields){var m=I[o.PGN]||o.Length;d.byteIndex;for(var p=d.byteIndex;p<m;p++)d.writeUint8(255)}return d.view.buffer.slice(0,d.byteIndex)}S("no pgn found: "+e.pgn)}function N(e,t,n,i,s,d){e.byteIndex;if(a.isUndefined(d)&&(d=n.BitLength),a.isUndefined(s))if(n.Type&&O[n.Type])O[n.Type](t,n,s,e);else if(d%8==0){for(var u=d/8,l=(n.Signed,n.Name.startsWith("Reserved"),0);l<u-1;l++)e.writeUint8(255);e.writeUint8(n.Signed?127:255)}else e.writeBits(16777215,d);else if("Industry Code"===n.Name?a.isString(s)&&(s=Number(B(s))):n.Type&&y[n.Type]?s=y[n.Type](n,s):n.EnumValues&&a.isString(s)&&("timeStamp"===n.Id&&s<60||(s=function(e,t){e.name2value||(e.name2value={},e.EnumValues.forEach((function(t){e.name2value[t.name]=Number(t.value)})));var n=e.name2value[t];return a.isUndefined(n)?t:n}(n,s))),n.Resolution&&"number"==typeof s&&(s=(s/n.Resolution).toFixed(0)),n.Type&&O[n.Type])O[n.Type](t,n,s,e);else if(a.isString(s)&&0!==d&&(s=Number(s)),"kWh"===n.Units?s/=36e5:"Ah"===n.Units&&(s/=3600),n.Offset&&(s-=n.Offset),0==d)!function(e,t,n,i,a){var s=r(n.PGN,e.view.buffer[e.byteIndex-1]-1);if(s){var o=s.BitLength+7&-8;N(e,t,s,n,a,o)}}(e,t,i,0,s);else if(a.isBuffer(s))s.copy(e.view.buffer,e.byteIndex),e.byteIndex+=s.length;else if(8===d)n.Signed?e.writeInt8(s):e.writeUint8(s);else if(16===d)n.Signed?e.writeInt16(s):e.writeUint16(s);else if(32===d)n.Signed?e.writeInt32(s):e.writeUint32(s);else if(48===d||24==d){var f=d/8,g=s;for(s<0&&g++;f-- >0;)s>0?(e.writeUint8(255&g),g/=256):(e.writeUint8(255&-g^255),g/=256)}else if(64===d){var c=(n.Signed,new o(s)).toBuffer();c.copy(e.view.buffer,e.byteIndex),e.byteIndex+=c.length}else e.writeBits(s,d)}function T(e){return parseInt(e,16)}function D(e,t,n=255){return`!PDGY,${e},${n},${t.toString("base64")}`}const b=a.flow(f,l),C=a.flow(f,g),R=a.flow(f,c),w=a.flow(f,m);O["ASCII text"]=(e,t,n,r)=>{let i=255;(129810===e&&("Vendor ID"===t.Name||"Callsign"===t.Name)||129809===e&&"Name"===t.Name)&&(a.isUndefined(n)||0==n.length)&&(i=64,n=""),a.isUndefined(n)&&(n="");for(var s=t.BitLength/8,o=0;o<n.length;o++)r.writeUint8(n.charCodeAt(o));for(o=0;o<s-n.length;o++)r.writeUint8(i)},O["String with start/stop byte"]=(e,t,n,r)=>{a.isUndefined(n)&&(n=""),r.writeUint8(2);for(var i=0;i<n.length;i++)r.writeUint8(n.charCodeAt(i));r.writeUint8(1)},O[v]=(e,t,n,r)=>{if(129041===e&&"AtoN Name"===t.Name&&(n=n.length>18?n.substring(0,18):n.padEnd(18," ")),r.writeUint8(n?n.length+2:2),r.writeUint8(1),n)for(var i=0;i<n.length;i++)r.writeUint8(n.charCodeAt(i))},y.Date=(e,t)=>a.isString(t)?new Date(t).getTime()/86400/1e3:t,y.Time=(e,t)=>{if(a.isString(t)){var n=t.split(":");t=60*Number(n[0])*60+60*Number(n[1])+Number(n[2])}return t},y["Manufacturer code"]=(e,t)=>(a.isString(t)&&(t=h(t)),Number(t)),y.Pressure=(e,t)=>{if(e.Units)switch(e.Units[0]){case"h":case"H":t/=100;break;case"k":case"K":t/=1e3;break;case"d":t*=10}return t},e.exports.canboat2Buffer=function(e){return t.alloc(e.split(",").slice(6).map(T),"hex")},e.exports.toPgn=L,e.exports.toiKonvertSerialFormat=D,e.exports.pgnToiKonvertSerialFormat=function(e){return D(e.pgn,L(e),e.dst)},e.exports.pgnToYdgwRawFormat=function(e){return l({...e,data:L(e)})},e.exports.actisenseToYdgwRawFormat=b,e.exports.pgnToActisenseSerialFormat=function(e){return u({pgn:e.pgn,data:L(e),dst:e.dst})},e.exports.pgnToPCDIN=function(e){return g({...e,data:L(e)})},e.exports.actisenseToPCDIN=C,e.exports.pgnToMXPGN=function(e){return c({...e,data:L(e)})},e.exports.actisenseToMXPGN=R,e.exports.actisenseToiKonvert=w}).call(this,n(0).Buffer)}]);
|