CINXE.COM
Aerospace & Defense | MicroStrain by HBK
<!DOCTYPE html> <html lang="en"> <head> <title>Aerospace & Defense | MicroStrain by HBK</title> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','digitalData','GTM-NDMV275');</script> <!-- End Google Tag Manager --> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/> <meta name="description" content="Aerospace & Defense | MicroStrain by HBK" /> <!--[if IE]><![endif]--> <link rel="dns-prefetch" href="//fonts.gstatic.com" /> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin="" /> <link rel="dns-prefetch" href="//fonts.googleapis.com" /> <link rel="preconnect" href="//fonts.googleapis.com" /> <link rel="dns-prefetch" href="//code.jquery.com" /> <link rel="preconnect" href="//code.jquery.com" /> <link rel="dns-prefetch" href="//cdn.jsdelivr.net" /> <link rel="preconnect" href="//cdn.jsdelivr.net" /> <link rel="dns-prefetch" href="//www.youtube.com" /> <link rel="preconnect" href="//www.youtube.com" /> <link rel="dns-prefetch" href="//cdnjs.cloudflare.com" /> <link rel="preconnect" href="//cdnjs.cloudflare.com" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="shortcut icon" href="https://www.microstrain.com/sites/default/files/favico.ico" type="image/vnd.microsoft.icon" /> <meta name="abstract" content="Aerospace & Defense" /> <meta name="keywords" content="Aerospace & Defense" /> <link rel="canonical" href="https://www.microstrain.com/applications/aerospace-defense" /> <link rel="shortlink" href="https://www.microstrain.com/taxonomy/term/121" /> <meta property="og:site_name" content="MicroStrain by HBK |" /> <meta property="og:title" content="Aerospace & Defense" /> <meta name="twitter:title" content="Aerospace & Defense" /> <script> <!--//--><![CDATA[//><!-- for(var fonts=document.cookie.split("advaggf"),i=0;i<fonts.length;i++){var font=fonts[i].split("="),pos=font[0].indexOf("ont_");-1!==pos&&(window.document.documentElement.className+=" "+font[0].substr(4).replace(/[^a-zA-Z0-9\-]/g,""))}if(void 0!==Storage){fonts=JSON.parse(localStorage.getItem("advagg_fonts"));var current_time=(new Date).getTime();for(var key in fonts)fonts[key]>=current_time&&(window.document.documentElement.className+=" "+key.replace(/[^a-zA-Z0-9\-]/g,""))} //--><!]]> </script> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__BJ6Ou6QsBRtnFTmxaakamOIS8n4QswDP2XnnZ1sxtaM__NBuvkP6eInGIkb1aJvUHx5PX79XApuxBDkk_77W5tYk__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__pb75Es3Qz_6dc5qRXFfBteLW3eKMf92-wDXx91C4Sts__AlXX7l5EyMwgh8hXVCFJhkREy8TbCDMpGBusnXpEgWc__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="screen" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__fLQUrcwtvQKuaPqlA-_e5ITqT9ZARURhCLurXwMAgzc__NmR5rLPISMeCsKg-smetghDdobHyXv7GEM6bPP3tNTI__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__uV_ZQuaEZw1F6_LFGBwVrOIC1ObAGqnY5etKsR-OYqk__o0WykpLdW8xeWrFAy9WUNQjH0VTUwhY3Q1q2j5wNQd0__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__8WJ1C0ykFZ6QZhszmaREw7ub1mb0yT3rFOngbWXR5hM__Oxa62spNbAyvJlPZg4jHZS4qGyvB7q9zzOy3KVsqR2U__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__cUdwCB6F2Lk0iITqobbVQ8gOJ9zdrZyOxxbFD3Q0nzQ__yqJRaMUlCF2byWSP6ta_JJz_d35qHcWI5q0uQa_dp1I__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__HotYMhc94c4Ot8BJpipmJVlpDpgQqpDPGxdO22d9a-Y__FviX13FUB-Ppa2XB29BUIJQZ1Wg-F5XiDE7XD5y7mjQ__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__lNW1T4F2XaZEhCtliBtQ1RcVDyyuNDHk3pzIpQy2VzA__wNTjsCVaNUtW_xprV2prfu5CjND7JX5FfC9Ze4uXxg8__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/advagg_css/css__Z-7DqWYJJgU4-uqvg2GZfgnNNbzHA5BCm0mUmwy8T6g__n-cPKf0Eixr3lC4T3R-rAm_x3mBSSvjakc4m2zt-BPM__XaDqPnyoGzutQu3j1ECWT8soWFJWzxYoswmKH5P1CuA.css" media="all" /> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/parallax-slider/js/modernizr.js?sndi97"></script> <script defer="defer" async="async" src="/sites/all/libraries/fontfaceobserver/fontfaceobserver.js?sndi97"></script> <script defer="defer" async="async" src="/sites/all/modules/advagg/advagg_font/advagg_font.js?sndi97"></script> <!--Change for Fonts (Oswald)--> <link href="https://fonts.googleapis.com/css?family=Oswald:500" rel="stylesheet"> </head> <body class="html not-front not-logged-in no-sidebars page-taxonomy page-taxonomy-term page-taxonomy-term- page-taxonomy-term-121 role-anonymous-user with-subnav page-applications-aerospace-defense section-applications" > <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NDMV275" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!-- Start of HubSpot Embed Code --> <script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/8359431.js"></script> <!-- End of HubSpot Embed Code --> <span style="display:none" id="countrycode">FR</span> <div class="page-pr"> <div class="wrapper"> <div class="block" data-bid="4656"> <script> console.log("jQuery /admin/structure/block/manage/block/491/configure"); /*! jQuery v2.2.4 | (c) jQuery Foundation | jquery.org/license */ !function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=a.document,e=c.slice,f=c.concat,g=c.push,h=c.indexOf,i={},j=i.toString,k=i.hasOwnProperty,l={},m="2.2.4",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return e.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:e.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a){return n.each(this,a)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(e.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:g,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){var b=a&&a.toString();return!n.isArray(a)&&b-parseFloat(b)+1>=0},isPlainObject:function(a){var b;if("object"!==n.type(a)||a.nodeType||n.isWindow(a))return!1;if(a.constructor&&!k.call(a,"constructor")&&!k.call(a.constructor.prototype||{},"isPrototypeOf"))return!1;for(b in a);return void 0===b||k.call(a,b)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?i[j.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=d.createElement("script"),b.text=a,d.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b){var c,d=0;if(s(a)){for(c=a.length;c>d;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):g.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:h.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,g=0,h=[];if(s(a))for(d=a.length;d>g;g++)e=b(a[g],g,c),null!=e&&h.push(e);else for(g in a)e=b(a[g],g,c),null!=e&&h.push(e);return f.apply([],h)},guid:1,proxy:function(a,b){var c,d,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(d=e.call(arguments,2),f=function(){return a.apply(b||this,d.concat(e.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:l}),"function"==typeof Symbol&&(n.fn[Symbol.iterator]=c[Symbol.iterator]),n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){i["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=!!a&&"length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ga(),z=ga(),A=ga(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+M+"))|)"+L+"*\\]",O=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+N+")*)|.*)\\)|)",P=new RegExp(L+"+","g"),Q=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),R=new RegExp("^"+L+"*,"+L+"*"),S=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),T=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),U=new RegExp(O),V=new RegExp("^"+M+"$"),W={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+O),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},X=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,_=/[+~]/,aa=/'|\\/g,ba=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),ca=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},da=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(ea){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function fa(a,b,d,e){var f,h,j,k,l,o,r,s,w=b&&b.ownerDocument,x=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==x&&9!==x&&11!==x)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==x&&(o=$.exec(a)))if(f=o[1]){if(9===x){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(w&&(j=w.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(o[2])return H.apply(d,b.getElementsByTagName(a)),d;if((f=o[3])&&c.getElementsByClassName&&b.getElementsByClassName)return H.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==x)w=b,s=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(aa,"\\$&"):b.setAttribute("id",k=u),r=g(a),h=r.length,l=V.test(k)?"#"+k:"[id='"+k+"']";while(h--)r[h]=l+" "+qa(r[h]);s=r.join(","),w=_.test(a)&&oa(b.parentNode)||b}if(s)try{return H.apply(d,w.querySelectorAll(s)),d}catch(y){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(Q,"$1"),b,d,e)}function ga(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ha(a){return a[u]=!0,a}function ia(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ja(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function ka(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function la(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function na(a){return ha(function(b){return b=+b,ha(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function oa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=fa.support={},f=fa.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fa.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ia(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ia(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Z.test(n.getElementsByClassName),c.getById=ia(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return"undefined"!=typeof b.getElementsByClassName&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=Z.test(n.querySelectorAll))&&(ia(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\r\\' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ia(function(a){var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Z.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ia(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",O)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Z.test(o.compareDocumentPosition),t=b||Z.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return ka(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?ka(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},fa.matches=function(a,b){return fa(a,null,null,b)},fa.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(T,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fa(b,n,null,[a]).length>0},fa.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fa.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fa.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fa.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=fa.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=fa.selectors={cacheLength:50,createPseudo:ha,match:W,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ba,ca),a[3]=(a[3]||a[4]||a[5]||"").replace(ba,ca),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fa.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fa.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return W.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&U.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ba,ca).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fa.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(P," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fa.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ha(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ha(function(a){var b=[],c=[],d=h(a.replace(Q,"$1"));return d[u]?ha(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ha(function(a){return function(b){return fa(a,b).length>0}}),contains:ha(function(a){return a=a.replace(ba,ca),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ha(function(a){return V.test(a||"")||fa.error("unsupported lang: "+a),a=a.replace(ba,ca).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Y.test(a.nodeName)},input:function(a){return X.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:na(function(){return[0]}),last:na(function(a,b){return[b-1]}),eq:na(function(a,b,c){return[0>c?c+b:c]}),even:na(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:na(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:na(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:na(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=la(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=ma(b);function pa(){}pa.prototype=d.filters=d.pseudos,d.setFilters=new pa,g=fa.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){c&&!(e=R.exec(h))||(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=S.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(Q," ")}),h=h.slice(c.length));for(g in d.filter)!(e=W[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?fa.error(a):z(a,i).slice(0)};function qa(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function ra(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j,k=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(j=b[u]||(b[u]={}),i=j[b.uniqueID]||(j[b.uniqueID]={}),(h=i[d])&&h[0]===w&&h[1]===f)return k[2]=h[2];if(i[d]=k,k[2]=a(b,c,g))return!0}}}function sa(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ta(a,b,c){for(var d=0,e=b.length;e>d;d++)fa(a,b[d],c);return c}function ua(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function va(a,b,c,d,e,f){return d&&!d[u]&&(d=va(d)),e&&!e[u]&&(e=va(e,f)),ha(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ta(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ua(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ua(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ua(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function wa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ra(function(a){return a===b},h,!0),l=ra(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[ra(sa(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return va(i>1&&sa(m),i>1&&qa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(Q,"$1"),c,e>i&&wa(a.slice(i,e)),f>e&&wa(a=a.slice(e)),f>e&&qa(a))}m.push(c)}return sa(m)}function xa(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=F.call(i));u=ua(u)}H.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&fa.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ha(f):f}return h=fa.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xa(e,d)),f.selector=a}return f},i=fa.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ba,ca),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=W.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ba,ca),_.test(j[0].type)&&oa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qa(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,!b||_.test(a)&&oa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ia(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ia(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ja("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ia(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ja("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ia(function(a){return null==a.getAttribute("disabled")})||ja(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fa}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.uniqueSort=n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},v=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},w=n.expr.match.needsContext,x=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,y=/^.[^:#\[\.,]*$/;function z(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(y.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return h.call(b,a)>-1!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(z(this,a||[],!1))},not:function(a){return this.pushStack(z(this,a||[],!0))},is:function(a){return!!z(this,"string"==typeof a&&w.test(a)?n(a):a||[],!1).length}});var A,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=n.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||A,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:B.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),x.test(e[1])&&n.isPlainObject(b))for(e in b)n.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&f.parentNode&&(this.length=1,this[0]=f),this.context=d,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?void 0!==c.ready?c.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};C.prototype=n.fn,A=n(d);var D=/^(?:parents|prev(?:Until|All))/,E={children:!0,contents:!0,next:!0,prev:!0};n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=w.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?h.call(n(a),this[0]):h.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.uniqueSort(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function F(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return u(a,"parentNode")},parentsUntil:function(a,b,c){return u(a,"parentNode",c)},next:function(a){return F(a,"nextSibling")},prev:function(a){return F(a,"previousSibling")},nextAll:function(a){return u(a,"nextSibling")},prevAll:function(a){return u(a,"previousSibling")},nextUntil:function(a,b,c){return u(a,"nextSibling",c)},prevUntil:function(a,b,c){return u(a,"previousSibling",c)},siblings:function(a){return v((a.parentNode||{}).firstChild,a)},children:function(a){return v(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(E[a]||n.uniqueSort(e),D.test(a)&&e.reverse()),this.pushStack(e)}});var G=/\S+/g;function H(a){var b={};return n.each(a.match(G)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?H(a):n.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h<f.length)f[h].apply(c[0],c[1])===!1&&a.stopOnFalse&&(h=f.length,c=!1)}a.memory||(c=!1),b=!1,e&&(f=c?[]:"")},j={add:function(){return f&&(c&&!b&&(h=f.length-1,g.push(c)),function d(b){n.each(b,function(b,c){n.isFunction(c)?a.unique&&j.has(c)||f.push(c):c&&c.length&&"string"!==n.type(c)&&d(c)})}(arguments),c&&!b&&i()),this},remove:function(){return n.each(arguments,function(a,b){var c;while((c=n.inArray(b,f,c))>-1)f.splice(c,1),h>=c&&h--}),this},has:function(a){return a?n.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().progress(c.notify).done(c.resolve).fail(c.reject):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=e.call(arguments),d=c.length,f=1!==d||a&&n.isFunction(a.promise)?d:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?e.call(arguments):d,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(d>1)for(i=new Array(d),j=new Array(d),k=new Array(d);d>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().progress(h(b,j,i)).done(h(b,k,c)).fail(g.reject):--f;return f||g.resolveWith(k,c),g.promise()}});var I;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(I.resolveWith(d,[n]),n.fn.triggerHandler&&(n(d).triggerHandler("ready"),n(d).off("ready"))))}});function J(){d.removeEventListener("DOMContentLoaded",J),a.removeEventListener("load",J),n.ready()}n.ready.promise=function(b){return I||(I=n.Deferred(),"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(n.ready):(d.addEventListener("DOMContentLoaded",J),a.addEventListener("load",J))),I.promise(b)},n.ready.promise();var K=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)K(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},L=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function M(){this.expando=n.expando+M.uid++}M.uid=1,M.prototype={register:function(a,b){var c=b||{};return a.nodeType?a[this.expando]=c:Object.defineProperty(a,this.expando,{value:c,writable:!0,configurable:!0}),a[this.expando]},cache:function(a){if(!L(a))return{};var b=a[this.expando];return b||(b={},L(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:function(a,b,c){var d,e=this.cache(a);if("string"==typeof b)e[b]=c;else for(d in b)e[d]=b[d];return e},get:function(a,b){return void 0===b?this.cache(a):a[this.expando]&&a[this.expando][b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=a[this.expando];if(void 0!==f){if(void 0===b)this.register(a);else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in f?d=[b,e]:(d=e,d=d in f?[d]:d.match(G)||[])),c=d.length;while(c--)delete f[d[c]]}(void 0===b||n.isEmptyObject(f))&&(a.nodeType?a[this.expando]=void 0:delete a[this.expando])}},hasData:function(a){var b=a[this.expando];return void 0!==b&&!n.isEmptyObject(b)}};var N=new M,O=new M,P=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Q=/[A-Z]/g;function R(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(Q,"-$&").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:P.test(c)?n.parseJSON(c):c; }catch(e){}O.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return O.hasData(a)||N.hasData(a)},data:function(a,b,c){return O.access(a,b,c)},removeData:function(a,b){O.remove(a,b)},_data:function(a,b,c){return N.access(a,b,c)},_removeData:function(a,b){N.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=O.get(f),1===f.nodeType&&!N.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),R(f,d,e[d])));N.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){O.set(this,a)}):K(this,function(b){var c,d;if(f&&void 0===b){if(c=O.get(f,a)||O.get(f,a.replace(Q,"-$&").toLowerCase()),void 0!==c)return c;if(d=n.camelCase(a),c=O.get(f,d),void 0!==c)return c;if(c=R(f,d,void 0),void 0!==c)return c}else d=n.camelCase(a),this.each(function(){var c=O.get(this,d);O.set(this,d,b),a.indexOf("-")>-1&&void 0!==c&&O.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){O.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=N.get(a,b),c&&(!d||n.isArray(c)?d=N.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return N.get(a,c)||N.access(a,c,{empty:n.Callbacks("once memory").add(function(){N.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?n.queue(this[0],a):void 0===b?this:this.each(function(){var c=n.queue(this,a,b);n._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&n.dequeue(this,a)})},dequeue:function(a){return this.each(function(){n.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=n.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=N.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var S=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=new RegExp("^(?:([+-])=|)("+S+")([a-z%]*)$","i"),U=["Top","Right","Bottom","Left"],V=function(a,b){return a=b||a,"none"===n.css(a,"display")||!n.contains(a.ownerDocument,a)};function W(a,b,c,d){var e,f=1,g=20,h=d?function(){return d.cur()}:function(){return n.css(a,b,"")},i=h(),j=c&&c[3]||(n.cssNumber[b]?"":"px"),k=(n.cssNumber[b]||"px"!==j&&+i)&&T.exec(n.css(a,b));if(k&&k[3]!==j){j=j||k[3],c=c||[],k=+i||1;do f=f||".5",k/=f,n.style(a,b,k+j);while(f!==(f=h()/i)&&1!==f&&--g)}return c&&(k=+k||+i||0,e=c[1]?k+(c[1]+1)*c[2]:+c[2],d&&(d.unit=j,d.start=k,d.end=e)),e}var X=/^(?:checkbox|radio)$/i,Y=/<([\w:-]+)/,Z=/^$|\/(?:java|ecma)script/i,$={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};$.optgroup=$.option,$.tbody=$.tfoot=$.colgroup=$.caption=$.thead,$.th=$.td;function _(a,b){var c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function aa(a,b){for(var c=0,d=a.length;d>c;c++)N.set(a[c],"globalEval",!b||N.get(b[c],"globalEval"))}var ba=/<|&#?\w+;/;function ca(a,b,c,d,e){for(var f,g,h,i,j,k,l=b.createDocumentFragment(),m=[],o=0,p=a.length;p>o;o++)if(f=a[o],f||0===f)if("object"===n.type(f))n.merge(m,f.nodeType?[f]:f);else if(ba.test(f)){g=g||l.appendChild(b.createElement("div")),h=(Y.exec(f)||["",""])[1].toLowerCase(),i=$[h]||$._default,g.innerHTML=i[1]+n.htmlPrefilter(f)+i[2],k=i[0];while(k--)g=g.lastChild;n.merge(m,g.childNodes),g=l.firstChild,g.textContent=""}else m.push(b.createTextNode(f));l.textContent="",o=0;while(f=m[o++])if(d&&n.inArray(f,d)>-1)e&&e.push(f);else if(j=n.contains(f.ownerDocument,f),g=_(l.appendChild(f),"script"),j&&aa(g),c){k=0;while(f=g[k++])Z.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),l.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",l.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var da=/^key/,ea=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,fa=/^([^.]*)(?:\.(.+)|)/;function ga(){return!0}function ha(){return!1}function ia(){try{return d.activeElement}catch(a){}}function ja(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ja(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=ha;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=N.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return"undefined"!=typeof n&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(G)||[""],j=b.length;while(j--)h=fa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=N.hasData(a)&&N.get(a);if(r&&(i=r.events)){b=(b||"").match(G)||[""],j=b.length;while(j--)if(h=fa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&N.remove(a,"handle events")}},dispatch:function(a){a=n.event.fix(a);var b,c,d,f,g,h=[],i=e.call(arguments),j=(N.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())a.rnamespace&&!a.rnamespace.test(g.namespace)||(a.handleObj=g,a.data=g.data,d=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!==this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>-1:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},props:"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,e,f,g=b.button;return null==a.pageX&&null!=b.clientX&&(c=a.target.ownerDocument||d,e=c.documentElement,f=c.body,a.pageX=b.clientX+(e&&e.scrollLeft||f&&f.scrollLeft||0)-(e&&e.clientLeft||f&&f.clientLeft||0),a.pageY=b.clientY+(e&&e.scrollTop||f&&f.scrollTop||0)-(e&&e.clientTop||f&&f.clientTop||0)),a.which||void 0===g||(a.which=1&g?1:2&g?3:4&g?2:0),a}},fix:function(a){if(a[n.expando])return a;var b,c,e,f=a.type,g=a,h=this.fixHooks[f];h||(this.fixHooks[f]=h=ea.test(f)?this.mouseHooks:da.test(f)?this.keyHooks:{}),e=h.props?this.props.concat(h.props):this.props,a=new n.Event(g),b=e.length;while(b--)c=e[b],a[c]=g[c];return a.target||(a.target=d),3===a.target.nodeType&&(a.target=a.target.parentNode),h.filter?h.filter(a,g):a},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==ia()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===ia()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&n.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(a){return n.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}}},n.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c)},n.Event=function(a,b){return this instanceof n.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?ga:ha):this.type=a,b&&n.extend(this,b),this.timeStamp=a&&a.timeStamp||n.now(),void(this[n.expando]=!0)):new n.Event(a,b)},n.Event.prototype={constructor:n.Event,isDefaultPrevented:ha,isPropagationStopped:ha,isImmediatePropagationStopped:ha,isSimulated:!1,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ga,a&&!this.isSimulated&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ga,a&&!this.isSimulated&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ga,a&&!this.isSimulated&&a.stopImmediatePropagation(),this.stopPropagation()}},n.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){n.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return e&&(e===d||n.contains(d,e))||(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),n.fn.extend({on:function(a,b,c,d){return ja(this,a,b,c,d)},one:function(a,b,c,d){return ja(this,a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,n(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return b!==!1&&"function"!=typeof b||(c=b,b=void 0),c===!1&&(c=ha),this.each(function(){n.event.remove(this,a,c,b)})}});var ka=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,la=/<script|<style|<link/i,ma=/checked\s*(?:[^=]|=\s*.checked.)/i,na=/^true\/(.*)/,oa=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function pa(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function qa(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function ra(a){var b=na.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function sa(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(N.hasData(a)&&(f=N.access(a),g=N.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}O.hasData(a)&&(h=O.access(a),i=n.extend({},h),O.set(b,i))}}function ta(a,b){var c=b.nodeName.toLowerCase();"input"===c&&X.test(a.type)?b.checked=a.checked:"input"!==c&&"textarea"!==c||(b.defaultValue=a.defaultValue)}function ua(a,b,c,d){b=f.apply([],b);var e,g,h,i,j,k,m=0,o=a.length,p=o-1,q=b[0],r=n.isFunction(q);if(r||o>1&&"string"==typeof q&&!l.checkClone&&ma.test(q))return a.each(function(e){var f=a.eq(e);r&&(b[0]=q.call(this,e,f.html())),ua(f,b,c,d)});if(o&&(e=ca(b,a[0].ownerDocument,!1,a,d),g=e.firstChild,1===e.childNodes.length&&(e=g),g||d)){for(h=n.map(_(e,"script"),qa),i=h.length;o>m;m++)j=e,m!==p&&(j=n.clone(j,!0,!0),i&&n.merge(h,_(j,"script"))),c.call(a[m],j,m);if(i)for(k=h[h.length-1].ownerDocument,n.map(h,ra),m=0;i>m;m++)j=h[m],Z.test(j.type||"")&&!N.access(j,"globalEval")&&n.contains(k,j)&&(j.src?n._evalUrl&&n._evalUrl(j.src):n.globalEval(j.textContent.replace(oa,"")))}return a}function va(a,b,c){for(var d,e=b?n.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||n.cleanData(_(d)),d.parentNode&&(c&&n.contains(d.ownerDocument,d)&&aa(_(d,"script")),d.parentNode.removeChild(d));return a}n.extend({htmlPrefilter:function(a){return a.replace(ka,"<$1></$2>")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(l.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=_(h),f=_(a),d=0,e=f.length;e>d;d++)ta(f[d],g[d]);if(b)if(c)for(f=f||_(a),g=g||_(h),d=0,e=f.length;e>d;d++)sa(f[d],g[d]);else sa(a,h);return g=_(h,"script"),g.length>0&&aa(g,!i&&_(a,"script")),h},cleanData:function(a){for(var b,c,d,e=n.event.special,f=0;void 0!==(c=a[f]);f++)if(L(c)){if(b=c[N.expando]){if(b.events)for(d in b.events)e[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);c[N.expando]=void 0}c[O.expando]&&(c[O.expando]=void 0)}}}),n.fn.extend({domManip:ua,detach:function(a){return va(this,a,!0)},remove:function(a){return va(this,a)},text:function(a){return K(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return ua(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=pa(this,a);b.appendChild(a)}})},prepend:function(){return ua(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=pa(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return ua(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return ua(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(_(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return K(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!la.test(a)&&!$[(Y.exec(a)||["",""])[1].toLowerCase()]){a=n.htmlPrefilter(a);try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(_(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return ua(this,arguments,function(b){var c=this.parentNode;n.inArray(this,a)<0&&(n.cleanData(_(this)),c&&c.replaceChild(b,this))},a)}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),f=e.length-1,h=0;f>=h;h++)c=h===f?this:this.clone(!0),n(e[h])[b](c),g.apply(d,c.get());return this.pushStack(d)}});var wa,xa={HTML:"block",BODY:"block"};function ya(a,b){var c=n(b.createElement(a)).appendTo(b.body),d=n.css(c[0],"display");return c.detach(),d}function za(a){var b=d,c=xa[a];return c||(c=ya(a,b),"none"!==c&&c||(wa=(wa||n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=wa[0].contentDocument,b.write(),b.close(),c=ya(a,b),wa.detach()),xa[a]=c),c}var Aa=/^margin/,Ba=new RegExp("^("+S+")(?!px)[a-z%]+$","i"),Ca=function(b){var c=b.ownerDocument.defaultView;return c&&c.opener||(c=a),c.getComputedStyle(b)},Da=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e},Ea=d.documentElement;!function(){var b,c,e,f,g=d.createElement("div"),h=d.createElement("div");if(h.style){h.style.backgroundClip="content-box",h.cloneNode(!0).style.backgroundClip="",l.clearCloneStyle="content-box"===h.style.backgroundClip,g.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",g.appendChild(h);function i(){h.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",h.innerHTML="",Ea.appendChild(g);var d=a.getComputedStyle(h);b="1%"!==d.top,f="2px"===d.marginLeft,c="4px"===d.width,h.style.marginRight="50%",e="4px"===d.marginRight,Ea.removeChild(g)}n.extend(l,{pixelPosition:function(){return i(),b},boxSizingReliable:function(){return null==c&&i(),c},pixelMarginRight:function(){return null==c&&i(),e},reliableMarginLeft:function(){return null==c&&i(),f},reliableMarginRight:function(){var b,c=h.appendChild(d.createElement("div"));return c.style.cssText=h.style.cssText="-webkit-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",c.style.marginRight=c.style.width="0",h.style.width="1px",Ea.appendChild(g),b=!parseFloat(a.getComputedStyle(c).marginRight),Ea.removeChild(g),h.removeChild(c),b}})}}();function Fa(a,b,c){var d,e,f,g,h=a.style;return c=c||Ca(a),g=c?c.getPropertyValue(b)||c[b]:void 0,""!==g&&void 0!==g||n.contains(a.ownerDocument,a)||(g=n.style(a,b)),c&&!l.pixelMarginRight()&&Ba.test(g)&&Aa.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f),void 0!==g?g+"":g}function Ga(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}var Ha=/^(none|table(?!-c[ea]).+)/,Ia={position:"absolute",visibility:"hidden",display:"block"},Ja={letterSpacing:"0",fontWeight:"400"},Ka=["Webkit","O","Moz","ms"],La=d.createElement("div").style;function Ma(a){if(a in La)return a;var b=a[0].toUpperCase()+a.slice(1),c=Ka.length;while(c--)if(a=Ka[c]+b,a in La)return a}function Na(a,b,c){var d=T.exec(b);return d?Math.max(0,d[2]-(c||0))+(d[3]||"px"):b}function Oa(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=n.css(a,c+U[f],!0,e)),d?("content"===c&&(g-=n.css(a,"padding"+U[f],!0,e)),"margin"!==c&&(g-=n.css(a,"border"+U[f]+"Width",!0,e))):(g+=n.css(a,"padding"+U[f],!0,e),"padding"!==c&&(g+=n.css(a,"border"+U[f]+"Width",!0,e)));return g}function Pa(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=Ca(a),g="border-box"===n.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=Fa(a,b,f),(0>e||null==e)&&(e=a.style[b]),Ba.test(e))return e;d=g&&(l.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Oa(a,b,c||(g?"border":"content"),d,f)+"px"}function Qa(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=N.get(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&V(d)&&(f[g]=N.access(d,"olddisplay",za(d.nodeName)))):(e=V(d),"none"===c&&e||N.set(d,"olddisplay",e?c:n.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}n.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Fa(a,"opacity");return""===c?"1":c}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=n.camelCase(b),i=a.style;return b=n.cssProps[h]||(n.cssProps[h]=Ma(h)||h),g=n.cssHooks[b]||n.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=T.exec(c))&&e[1]&&(c=W(a,b,e),f="number"),null!=c&&c===c&&("number"===f&&(c+=e&&e[3]||(n.cssNumber[h]?"":"px")),l.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=n.camelCase(b);return b=n.cssProps[h]||(n.cssProps[h]=Ma(h)||h),g=n.cssHooks[b]||n.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=Fa(a,b,d)),"normal"===e&&b in Ja&&(e=Ja[b]),""===c||c?(f=parseFloat(e),c===!0||isFinite(f)?f||0:e):e}}),n.each(["height","width"],function(a,b){n.cssHooks[b]={get:function(a,c,d){return c?Ha.test(n.css(a,"display"))&&0===a.offsetWidth?Da(a,Ia,function(){return Pa(a,b,d)}):Pa(a,b,d):void 0},set:function(a,c,d){var e,f=d&&Ca(a),g=d&&Oa(a,b,d,"border-box"===n.css(a,"boxSizing",!1,f),f);return g&&(e=T.exec(c))&&"px"!==(e[3]||"px")&&(a.style[b]=c,c=n.css(a,b)),Na(a,c,g)}}}),n.cssHooks.marginLeft=Ga(l.reliableMarginLeft,function(a,b){return b?(parseFloat(Fa(a,"marginLeft"))||a.getBoundingClientRect().left-Da(a,{marginLeft:0},function(){return a.getBoundingClientRect().left}))+"px":void 0}),n.cssHooks.marginRight=Ga(l.reliableMarginRight,function(a,b){return b?Da(a,{display:"inline-block"},Fa,[a,"marginRight"]):void 0}),n.each({margin:"",padding:"",border:"Width"},function(a,b){n.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+U[d]+b]=f[d]||f[d-2]||f[0];return e}},Aa.test(a)||(n.cssHooks[a+b].set=Na)}),n.fn.extend({css:function(a,b){return K(this,function(a,b,c){var d,e,f={},g=0;if(n.isArray(b)){for(d=Ca(a),e=b.length;e>g;g++)f[b[g]]=n.css(a,b[g],!1,d);return f}return void 0!==c?n.style(a,b,c):n.css(a,b)},a,b,arguments.length>1)},show:function(){return Qa(this,!0)},hide:function(){return Qa(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){V(this)?n(this).show():n(this).hide()})}});function Ra(a,b,c,d,e){return new Ra.prototype.init(a,b,c,d,e)}n.Tween=Ra,Ra.prototype={constructor:Ra,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||n.easing._default,this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(n.cssNumber[c]?"":"px")},cur:function(){var a=Ra.propHooks[this.prop];return a&&a.get?a.get(this):Ra.propHooks._default.get(this)},run:function(a){var b,c=Ra.propHooks[this.prop];return this.options.duration?this.pos=b=n.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Ra.propHooks._default.set(this),this}},Ra.prototype.init.prototype=Ra.prototype,Ra.propHooks={_default:{get:function(a){var b;return 1!==a.elem.nodeType||null!=a.elem[a.prop]&&null==a.elem.style[a.prop]?a.elem[a.prop]:(b=n.css(a.elem,a.prop,""),b&&"auto"!==b?b:0)},set:function(a){n.fx.step[a.prop]?n.fx.step[a.prop](a):1!==a.elem.nodeType||null==a.elem.style[n.cssProps[a.prop]]&&!n.cssHooks[a.prop]?a.elem[a.prop]=a.now:n.style(a.elem,a.prop,a.now+a.unit)}}},Ra.propHooks.scrollTop=Ra.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},n.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},_default:"swing"},n.fx=Ra.prototype.init,n.fx.step={};var Sa,Ta,Ua=/^(?:toggle|show|hide)$/,Va=/queueHooks$/;function Wa(){return a.setTimeout(function(){Sa=void 0}),Sa=n.now()}function Xa(a,b){var c,d=0,e={height:a};for(b=b?1:0;4>d;d+=2-b)c=U[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function Ya(a,b,c){for(var d,e=(_a.tweeners[b]||[]).concat(_a.tweeners["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function Za(a,b,c){var d,e,f,g,h,i,j,k,l=this,m={},o=a.style,p=a.nodeType&&V(a),q=N.get(a,"fxshow");c.queue||(h=n._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,l.always(function(){l.always(function(){h.unqueued--,n.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[o.overflow,o.overflowX,o.overflowY],j=n.css(a,"display"),k="none"===j?N.get(a,"olddisplay")||za(a.nodeName):j,"inline"===k&&"none"===n.css(a,"float")&&(o.display="inline-block")),c.overflow&&(o.overflow="hidden",l.always(function(){o.overflow=c.overflow[0],o.overflowX=c.overflow[1],o.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],Ua.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(p?"hide":"show")){if("show"!==e||!q||void 0===q[d])continue;p=!0}m[d]=q&&q[d]||n.style(a,d)}else j=void 0;if(n.isEmptyObject(m))"inline"===("none"===j?za(a.nodeName):j)&&(o.display=j);else{q?"hidden"in q&&(p=q.hidden):q=N.access(a,"fxshow",{}),f&&(q.hidden=!p),p?n(a).show():l.done(function(){n(a).hide()}),l.done(function(){var b;N.remove(a,"fxshow");for(b in m)n.style(a,b,m[b])});for(d in m)g=Ya(p?q[d]:0,d,l),d in q||(q[d]=g.start,p&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function $a(a,b){var c,d,e,f,g;for(c in a)if(d=n.camelCase(c),e=b[d],f=a[c],n.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=n.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function _a(a,b,c){var d,e,f=0,g=_a.prefilters.length,h=n.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=Sa||Wa(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:n.extend({},b),opts:n.extend(!0,{specialEasing:{},easing:n.easing._default},c),originalProperties:b,originalOptions:c,startTime:Sa||Wa(),duration:c.duration,tweens:[],createTween:function(b,c){var d=n.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?(h.notifyWith(a,[j,1,0]),h.resolveWith(a,[j,b])):h.rejectWith(a,[j,b]),this}}),k=j.props;for($a(k,j.opts.specialEasing);g>f;f++)if(d=_a.prefilters[f].call(j,a,k,j.opts))return n.isFunction(d.stop)&&(n._queueHooks(j.elem,j.opts.queue).stop=n.proxy(d.stop,d)),d;return n.map(k,Ya,j),n.isFunction(j.opts.start)&&j.opts.start.call(a,j),n.fx.timer(n.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}n.Animation=n.extend(_a,{tweeners:{"*":[function(a,b){var c=this.createTween(a,b);return W(c.elem,a,T.exec(b),c),c}]},tweener:function(a,b){n.isFunction(a)?(b=a,a=["*"]):a=a.match(G);for(var c,d=0,e=a.length;e>d;d++)c=a[d],_a.tweeners[c]=_a.tweeners[c]||[],_a.tweeners[c].unshift(b)},prefilters:[Za],prefilter:function(a,b){b?_a.prefilters.unshift(a):_a.prefilters.push(a)}}),n.speed=function(a,b,c){var d=a&&"object"==typeof a?n.extend({},a):{complete:c||!c&&b||n.isFunction(a)&&a,duration:a,easing:c&&b||b&&!n.isFunction(b)&&b};return d.duration=n.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in n.fx.speeds?n.fx.speeds[d.duration]:n.fx.speeds._default,null!=d.queue&&d.queue!==!0||(d.queue="fx"),d.old=d.complete,d.complete=function(){n.isFunction(d.old)&&d.old.call(this),d.queue&&n.dequeue(this,d.queue)},d},n.fn.extend({fadeTo:function(a,b,c,d){return this.filter(V).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=n.isEmptyObject(a),f=n.speed(b,c,d),g=function(){var b=_a(this,n.extend({},a),f);(e||N.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=n.timers,g=N.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&Va.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));!b&&c||n.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=N.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=n.timers,g=d?d.length:0;for(c.finish=!0,n.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),n.each(["toggle","show","hide"],function(a,b){var c=n.fn[b];n.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(Xa(b,!0),a,d,e)}}),n.each({slideDown:Xa("show"),slideUp:Xa("hide"),slideToggle:Xa("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){n.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),n.timers=[],n.fx.tick=function(){var a,b=0,c=n.timers;for(Sa=n.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||n.fx.stop(),Sa=void 0},n.fx.timer=function(a){n.timers.push(a),a()?n.fx.start():n.timers.pop()},n.fx.interval=13,n.fx.start=function(){Ta||(Ta=a.setInterval(n.fx.tick,n.fx.interval))},n.fx.stop=function(){a.clearInterval(Ta),Ta=null},n.fx.speeds={slow:600,fast:200,_default:400},n.fn.delay=function(b,c){return b=n.fx?n.fx.speeds[b]||b:b,c=c||"fx",this.queue(c,function(c,d){var e=a.setTimeout(c,b);d.stop=function(){a.clearTimeout(e)}})},function(){var a=d.createElement("input"),b=d.createElement("select"),c=b.appendChild(d.createElement("option"));a.type="checkbox",l.checkOn=""!==a.value,l.optSelected=c.selected,b.disabled=!0,l.optDisabled=!c.disabled,a=d.createElement("input"),a.value="t",a.type="radio",l.radioValue="t"===a.value}();var ab,bb=n.expr.attrHandle;n.fn.extend({attr:function(a,b){return K(this,n.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){n.removeAttr(this,a)})}}),n.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?n.prop(a,b,c):(1===f&&n.isXMLDoc(a)||(b=b.toLowerCase(),e=n.attrHooks[b]||(n.expr.match.bool.test(b)?ab:void 0)),void 0!==c?null===c?void n.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=n.find.attr(a,b),null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!l.radioValue&&"radio"===b&&n.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(G);if(f&&1===a.nodeType)while(c=f[e++])d=n.propFix[c]||c,n.expr.match.bool.test(c)&&(a[d]=!1),a.removeAttribute(c)}}),ab={set:function(a,b,c){return b===!1?n.removeAttr(a,c):a.setAttribute(c,c),c}},n.each(n.expr.match.bool.source.match(/\w+/g),function(a,b){var c=bb[b]||n.find.attr;bb[b]=function(a,b,d){var e,f;return d||(f=bb[b],bb[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,bb[b]=f),e}});var cb=/^(?:input|select|textarea|button)$/i,db=/^(?:a|area)$/i;n.fn.extend({prop:function(a,b){return K(this,n.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[n.propFix[a]||a]})}}),n.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&n.isXMLDoc(a)||(b=n.propFix[b]||b,e=n.propHooks[b]), void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=n.find.attr(a,"tabindex");return b?parseInt(b,10):cb.test(a.nodeName)||db.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),l.optSelected||(n.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),n.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){n.propFix[this.toLowerCase()]=this});var eb=/[\t\r\n\f]/g;function fb(a){return a.getAttribute&&a.getAttribute("class")||""}n.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(n.isFunction(a))return this.each(function(b){n(this).addClass(a.call(this,b,fb(this)))});if("string"==typeof a&&a){b=a.match(G)||[];while(c=this[i++])if(e=fb(c),d=1===c.nodeType&&(" "+e+" ").replace(eb," ")){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=n.trim(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(n.isFunction(a))return this.each(function(b){n(this).removeClass(a.call(this,b,fb(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(G)||[];while(c=this[i++])if(e=fb(c),d=1===c.nodeType&&(" "+e+" ").replace(eb," ")){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=n.trim(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):n.isFunction(a)?this.each(function(c){n(this).toggleClass(a.call(this,c,fb(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=n(this),f=a.match(G)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=fb(this),b&&N.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":N.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+fb(c)+" ").replace(eb," ").indexOf(b)>-1)return!0;return!1}});var gb=/\r/g,hb=/[\x20\t\r\n\f]+/g;n.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=n.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,n(this).val()):a,null==e?e="":"number"==typeof e?e+="":n.isArray(e)&&(e=n.map(e,function(a){return null==a?"":a+""})),b=n.valHooks[this.type]||n.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=n.valHooks[e.type]||n.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(gb,""):null==c?"":c)}}}),n.extend({valHooks:{option:{get:function(a){var b=n.find.attr(a,"value");return null!=b?b:n.trim(n.text(a)).replace(hb," ")}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],(c.selected||i===e)&&(l.optDisabled?!c.disabled:null===c.getAttribute("disabled"))&&(!c.parentNode.disabled||!n.nodeName(c.parentNode,"optgroup"))){if(b=n(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=n.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=n.inArray(n.valHooks.option.get(d),f)>-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),n.each(["radio","checkbox"],function(){n.valHooks[this]={set:function(a,b){return n.isArray(b)?a.checked=n.inArray(n(a).val(),b)>-1:void 0}},l.checkOn||(n.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var ib=/^(?:focusinfocus|focusoutblur)$/;n.extend(n.event,{trigger:function(b,c,e,f){var g,h,i,j,l,m,o,p=[e||d],q=k.call(b,"type")?b.type:b,r=k.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!ib.test(q+n.event.triggered)&&(q.indexOf(".")>-1&&(r=q.split("."),q=r.shift(),r.sort()),l=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=r.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},f||!o.trigger||o.trigger.apply(e,c)!==!1)){if(!f&&!o.noBubble&&!n.isWindow(e)){for(j=o.delegateType||q,ib.test(j+q)||(h=h.parentNode);h;h=h.parentNode)p.push(h),i=h;i===(e.ownerDocument||d)&&p.push(i.defaultView||i.parentWindow||a)}g=0;while((h=p[g++])&&!b.isPropagationStopped())b.type=g>1?j:o.bindType||q,m=(N.get(h,"events")||{})[b.type]&&N.get(h,"handle"),m&&m.apply(h,c),m=l&&h[l],m&&m.apply&&L(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=q,f||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!L(e)||l&&n.isFunction(e[q])&&!n.isWindow(e)&&(i=e[l],i&&(e[l]=null),n.event.triggered=q,e[q](),n.event.triggered=void 0,i&&(e[l]=i)),b.result}},simulate:function(a,b,c){var d=n.extend(new n.Event,c,{type:a,isSimulated:!0});n.event.trigger(d,null,b)}}),n.fn.extend({trigger:function(a,b){return this.each(function(){n.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?n.event.trigger(a,b,c,!0):void 0}}),n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){n.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),n.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),l.focusin="onfocusin"in a,l.focusin||n.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){n.event.simulate(b,a.target,n.event.fix(a))};n.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=N.access(d,b);e||d.addEventListener(a,c,!0),N.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=N.access(d,b)-1;e?N.access(d,b,e):(d.removeEventListener(a,c,!0),N.remove(d,b))}}});var jb=a.location,kb=n.now(),lb=/\?/;n.parseJSON=function(a){return JSON.parse(a+"")},n.parseXML=function(b){var c;if(!b||"string"!=typeof b)return null;try{c=(new a.DOMParser).parseFromString(b,"text/xml")}catch(d){c=void 0}return c&&!c.getElementsByTagName("parsererror").length||n.error("Invalid XML: "+b),c};var mb=/#.*$/,nb=/([?&])_=[^&]*/,ob=/^(.*?):[ \t]*([^\r\n]*)$/gm,pb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,qb=/^(?:GET|HEAD)$/,rb=/^\/\//,sb={},tb={},ub="*/".concat("*"),vb=d.createElement("a");vb.href=jb.href;function wb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(G)||[];if(n.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function xb(a,b,c,d){var e={},f=a===tb;function g(h){var i;return e[h]=!0,n.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function yb(a,b){var c,d,e=n.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&n.extend(!0,a,d),a}function zb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function Ab(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}n.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:jb.href,type:"GET",isLocal:pb.test(jb.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":ub,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":n.parseJSON,"text xml":n.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?yb(yb(a,n.ajaxSettings),b):yb(n.ajaxSettings,a)},ajaxPrefilter:wb(sb),ajaxTransport:wb(tb),ajax:function(b,c){"object"==typeof b&&(c=b,b=void 0),c=c||{};var e,f,g,h,i,j,k,l,m=n.ajaxSetup({},c),o=m.context||m,p=m.context&&(o.nodeType||o.jquery)?n(o):n.event,q=n.Deferred(),r=n.Callbacks("once memory"),s=m.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,getResponseHeader:function(a){var b;if(2===v){if(!h){h={};while(b=ob.exec(g))h[b[1].toLowerCase()]=b[2]}b=h[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===v?g:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return v||(a=u[c]=u[c]||a,t[a]=b),this},overrideMimeType:function(a){return v||(m.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>v)for(b in a)s[b]=[s[b],a[b]];else x.always(a[x.status]);return this},abort:function(a){var b=a||w;return e&&e.abort(b),z(0,b),this}};if(q.promise(x).complete=r.add,x.success=x.done,x.error=x.fail,m.url=((b||m.url||jb.href)+"").replace(mb,"").replace(rb,jb.protocol+"//"),m.type=c.method||c.type||m.method||m.type,m.dataTypes=n.trim(m.dataType||"*").toLowerCase().match(G)||[""],null==m.crossDomain){j=d.createElement("a");try{j.href=m.url,j.href=j.href,m.crossDomain=vb.protocol+"//"+vb.host!=j.protocol+"//"+j.host}catch(y){m.crossDomain=!0}}if(m.data&&m.processData&&"string"!=typeof m.data&&(m.data=n.param(m.data,m.traditional)),xb(sb,m,c,x),2===v)return x;k=n.event&&m.global,k&&0===n.active++&&n.event.trigger("ajaxStart"),m.type=m.type.toUpperCase(),m.hasContent=!qb.test(m.type),f=m.url,m.hasContent||(m.data&&(f=m.url+=(lb.test(f)?"&":"?")+m.data,delete m.data),m.cache===!1&&(m.url=nb.test(f)?f.replace(nb,"$1_="+kb++):f+(lb.test(f)?"&":"?")+"_="+kb++)),m.ifModified&&(n.lastModified[f]&&x.setRequestHeader("If-Modified-Since",n.lastModified[f]),n.etag[f]&&x.setRequestHeader("If-None-Match",n.etag[f])),(m.data&&m.hasContent&&m.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",m.contentType),x.setRequestHeader("Accept",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+("*"!==m.dataTypes[0]?", "+ub+"; q=0.01":""):m.accepts["*"]);for(l in m.headers)x.setRequestHeader(l,m.headers[l]);if(m.beforeSend&&(m.beforeSend.call(o,x,m)===!1||2===v))return x.abort();w="abort";for(l in{success:1,error:1,complete:1})x[l](m[l]);if(e=xb(tb,m,c,x)){if(x.readyState=1,k&&p.trigger("ajaxSend",[x,m]),2===v)return x;m.async&&m.timeout>0&&(i=a.setTimeout(function(){x.abort("timeout")},m.timeout));try{v=1,e.send(t,z)}catch(y){if(!(2>v))throw y;z(-1,y)}}else z(-1,"No Transport");function z(b,c,d,h){var j,l,t,u,w,y=c;2!==v&&(v=2,i&&a.clearTimeout(i),e=void 0,g=h||"",x.readyState=b>0?4:0,j=b>=200&&300>b||304===b,d&&(u=zb(m,x,d)),u=Ab(m,u,x,j),j?(m.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(n.lastModified[f]=w),w=x.getResponseHeader("etag"),w&&(n.etag[f]=w)),204===b||"HEAD"===m.type?y="nocontent":304===b?y="notmodified":(y=u.state,l=u.data,t=u.error,j=!t)):(t=y,!b&&y||(y="error",0>b&&(b=0))),x.status=b,x.statusText=(c||y)+"",j?q.resolveWith(o,[l,y,x]):q.rejectWith(o,[x,y,t]),x.statusCode(s),s=void 0,k&&p.trigger(j?"ajaxSuccess":"ajaxError",[x,m,j?l:t]),r.fireWith(o,[x,y]),k&&(p.trigger("ajaxComplete",[x,m]),--n.active||n.event.trigger("ajaxStop")))}return x},getJSON:function(a,b,c){return n.get(a,b,c,"json")},getScript:function(a,b){return n.get(a,void 0,b,"script")}}),n.each(["get","post"],function(a,b){n[b]=function(a,c,d,e){return n.isFunction(c)&&(e=e||d,d=c,c=void 0),n.ajax(n.extend({url:a,type:b,dataType:e,data:c,success:d},n.isPlainObject(a)&&a))}}),n._evalUrl=function(a){return n.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},n.fn.extend({wrapAll:function(a){var b;return n.isFunction(a)?this.each(function(b){n(this).wrapAll(a.call(this,b))}):(this[0]&&(b=n(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this)},wrapInner:function(a){return n.isFunction(a)?this.each(function(b){n(this).wrapInner(a.call(this,b))}):this.each(function(){var b=n(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=n.isFunction(a);return this.each(function(c){n(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){n.nodeName(this,"body")||n(this).replaceWith(this.childNodes)}).end()}}),n.expr.filters.hidden=function(a){return!n.expr.filters.visible(a)},n.expr.filters.visible=function(a){return a.offsetWidth>0||a.offsetHeight>0||a.getClientRects().length>0};var Bb=/%20/g,Cb=/\[\]$/,Db=/\r?\n/g,Eb=/^(?:submit|button|image|reset|file)$/i,Fb=/^(?:input|select|textarea|keygen)/i;function Gb(a,b,c,d){var e;if(n.isArray(b))n.each(b,function(b,e){c||Cb.test(a)?d(a,e):Gb(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==n.type(b))d(a,b);else for(e in b)Gb(a+"["+e+"]",b[e],c,d)}n.param=function(a,b){var c,d=[],e=function(a,b){b=n.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=n.ajaxSettings&&n.ajaxSettings.traditional),n.isArray(a)||a.jquery&&!n.isPlainObject(a))n.each(a,function(){e(this.name,this.value)});else for(c in a)Gb(c,a[c],b,e);return d.join("&").replace(Bb,"+")},n.fn.extend({serialize:function(){return n.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=n.prop(this,"elements");return a?n.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!n(this).is(":disabled")&&Fb.test(this.nodeName)&&!Eb.test(a)&&(this.checked||!X.test(a))}).map(function(a,b){var c=n(this).val();return null==c?null:n.isArray(c)?n.map(c,function(a){return{name:b.name,value:a.replace(Db,"\r\n")}}):{name:b.name,value:c.replace(Db,"\r\n")}}).get()}}),n.ajaxSettings.xhr=function(){try{return new a.XMLHttpRequest}catch(b){}};var Hb={0:200,1223:204},Ib=n.ajaxSettings.xhr();l.cors=!!Ib&&"withCredentials"in Ib,l.ajax=Ib=!!Ib,n.ajaxTransport(function(b){var c,d;return l.cors||Ib&&!b.crossDomain?{send:function(e,f){var g,h=b.xhr();if(h.open(b.type,b.url,b.async,b.username,b.password),b.xhrFields)for(g in b.xhrFields)h[g]=b.xhrFields[g];b.mimeType&&h.overrideMimeType&&h.overrideMimeType(b.mimeType),b.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");for(g in e)h.setRequestHeader(g,e[g]);c=function(a){return function(){c&&(c=d=h.onload=h.onerror=h.onabort=h.onreadystatechange=null,"abort"===a?h.abort():"error"===a?"number"!=typeof h.status?f(0,"error"):f(h.status,h.statusText):f(Hb[h.status]||h.status,h.statusText,"text"!==(h.responseType||"text")||"string"!=typeof h.responseText?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=c(),d=h.onerror=c("error"),void 0!==h.onabort?h.onabort=d:h.onreadystatechange=function(){4===h.readyState&&a.setTimeout(function(){c&&d()})},c=c("abort");try{h.send(b.hasContent&&b.data||null)}catch(i){if(c)throw i}},abort:function(){c&&c()}}:void 0}),n.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(a){return n.globalEval(a),a}}}),n.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),n.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(e,f){b=n("<script>").prop({charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&f("error"===a.type?404:200,a.type)}),d.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Jb=[],Kb=/(=)\?(?=&|$)|\?\?/;n.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Jb.pop()||n.expando+"_"+kb++;return this[a]=!0,a}}),n.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Kb.test(b.url)?"url":"string"==typeof b.data&&0===(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Kb.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=n.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Kb,"$1"+e):b.jsonp!==!1&&(b.url+=(lb.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||n.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){void 0===f?n(a).removeProp(e):a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Jb.push(e)),g&&n.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),n.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||d;var e=x.exec(a),f=!c&&[];return e?[b.createElement(e[1])]:(e=ca([a],b,f),f&&f.length&&n(f).remove(),n.merge([],e.childNodes))};var Lb=n.fn.load;n.fn.load=function(a,b,c){if("string"!=typeof a&&Lb)return Lb.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>-1&&(d=n.trim(a.slice(h)),a=a.slice(0,h)),n.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&n.ajax({url:a,type:e||"GET",dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?n("<div>").append(n.parseHTML(a)).find(d):a)}).always(c&&function(a,b){g.each(function(){c.apply(this,f||[a.responseText,b,a])})}),this},n.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){n.fn[b]=function(a){return this.on(b,a)}}),n.expr.filters.animated=function(a){return n.grep(n.timers,function(b){return a===b.elem}).length};function Mb(a){return n.isWindow(a)?a:9===a.nodeType&&a.defaultView}n.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=n.css(a,"position"),l=n(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=n.css(a,"top"),i=n.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),n.isFunction(b)&&(b=b.call(a,c,n.extend({},h))),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},n.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){n.offset.setOffset(this,a,b)});var b,c,d=this[0],e={top:0,left:0},f=d&&d.ownerDocument;if(f)return b=f.documentElement,n.contains(b,d)?(e=d.getBoundingClientRect(),c=Mb(f),{top:e.top+c.pageYOffset-b.clientTop,left:e.left+c.pageXOffset-b.clientLeft}):e},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===n.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),n.nodeName(a[0],"html")||(d=a.offset()),d.top+=n.css(a[0],"borderTopWidth",!0),d.left+=n.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-n.css(c,"marginTop",!0),left:b.left-d.left-n.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent;while(a&&"static"===n.css(a,"position"))a=a.offsetParent;return a||Ea})}}),n.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c="pageYOffset"===b;n.fn[a]=function(d){return K(this,function(a,d,e){var f=Mb(a);return void 0===e?f?f[b]:a[d]:void(f?f.scrollTo(c?f.pageXOffset:e,c?e:f.pageYOffset):a[d]=e)},a,d,arguments.length)}}),n.each(["top","left"],function(a,b){n.cssHooks[b]=Ga(l.pixelPosition,function(a,c){return c?(c=Fa(a,b),Ba.test(c)?n(a).position()[b]+"px":c):void 0})}),n.each({Height:"height",Width:"width"},function(a,b){n.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){n.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return K(this,function(b,c,d){var e;return n.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?n.css(b,c,g):n.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),n.fn.extend({bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)},size:function(){return this.length}}),n.fn.andSelf=n.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return n});var Nb=a.jQuery,Ob=a.$;return n.noConflict=function(b){return a.$===n&&(a.$=Ob),b&&a.jQuery===n&&(a.jQuery=Nb),n},b||(a.jQuery=a.$=n),n}); <!--//drupal js--> (function ($) { $(document).ready(function($) { $("#contact-floating-popup").wrap('<a href="/contact"></a>'); }); })(jQuery); /*(function ($) { $(document).ready(function() { var urlLocation = window.location.pathname; var pathArray = window.location.pathname.split('/'); console.log("Teeeeeest"); if(pathArray[1]=='displacement-sensors'){ console.log(pathArray[1]); $('.mouser').remove(); } var regex = /[\?&]pn=([^&#]*)/gm; var link = $('#mouser-submit').attr('href'); let m; var result = []; while ((m = regex.exec(link)) !== null) { if (m.index === regex.lastIndex) { regex.lastIndex++; } m.forEach((match, groupIndex) => { result[groupIndex] = match; console.log(`Found match, group ${groupIndex}: ${match}`); }); } console.log(result); var data = JSON.stringify({ "SearchByPartMfrNameRequest": { "manufacturerName": "Parker LORD", "mouserPartNumber": "partnumber", "partSearchOptions": "None" } }); data = data.replace(/partnumber/gm, result[1]); var apiKeys = [ "e5143f55-9984-4ddb-a646-c4c4cb3f31e1", "0145d4ff-56df-404b-a86d-1f3ee286d06a", "c5b3df9c-ef7d-4222-a6a9-9a73e8551b9d", "5691a57b-6e26-4cf3-b952-f20fa69e3050", "233f8b1b-ac67-46dc-8bc7-5a231e7c9ae2" ]; var currentKey = 0; function makeRequest(data) { var xhr = new XMLHttpRequest(); xhr.withCredentials = true; xhr.addEventListener("readystatechange", function () { if (this.readyState === 4) { var response = JSON.parse(this.responseText); console.log(response); if (response.Errors && response.Errors.length > 0 && response.Errors[0].Code === 'TooManyRequests' && currentKey < apiKeys.length - 1) { currentKey++; makeRequest(data); return; } console.log(response); var finalLink = response.SearchResults.Parts[0].ProductDetailUrl; console.log("Mouser: " + finalLink); $('input#edit-submitted-redirect').attr('value', finalLink); } }); console.log("API: " + apiKeys[currentKey]); xhr.open("POST", "https://api.mouser.com/api/v2/search/partnumberandmanufacturer?apiKey=" + apiKeys[currentKey]); xhr.setRequestHeader("accept", "application/json"); xhr.setRequestHeader("content-type", "application/json"); xhr.setRequestHeader("cache-control", "no-cache"); xhr.setRequestHeader("postman-token", "160d9cba-5c10-a9c8-58e7-207b449b783b"); xhr.send(data); } makeRequest(data); $('button#express-delivery').on("click",function(){ $('#expressDeliveryModal').height(0); var mouserPage = $('input#edit-submitted-redirect').attr('value'); window.location.href = mouserPage; }) }); })(jQuery);*/ var Drupal = Drupal || { 'settings': {}, 'behaviors': {}, 'locale': {} }; // Allow other JavaScript libraries to use $. jQuery.noConflict(); (function ($) { /** * Override jQuery.fn.init to guard against XSS attacks. * * See http://bugs.jquery.com/ticket/9521 */ var jquery_init = $.fn.init; $.fn.init = function (selector, context, rootjQuery) { // If the string contains a "#" before a "<", treat it as invalid HTML. if (selector && typeof selector === 'string') { var hash_position = selector.indexOf('#'); if (hash_position >= 0) { var bracket_position = selector.indexOf('<'); if (bracket_position > hash_position) { throw 'Syntax error, unrecognized expression: ' + selector; } } } return jquery_init.call(this, selector, context, rootjQuery); }; $.fn.init.prototype = jquery_init.prototype; /** * Pre-filter Ajax requests to guard against XSS attacks. * * See https://github.com/jquery/jquery/issues/2432 */ if ($.ajaxPrefilter) { // For newer versions of jQuery, use an Ajax prefilter to prevent // auto-executing script tags from untrusted domains. This is similar to the // fix that is built in to jQuery 3.0 and higher. $.ajaxPrefilter(function (s) { if (s.crossDomain) { s.contents.script = false; } }); } else if ($.httpData) { // For the version of jQuery that ships with Drupal core, override // jQuery.httpData to prevent auto-detecting "script" data types from // untrusted domains. var jquery_httpData = $.httpData; $.httpData = function (xhr, type, s) { // @todo Consider backporting code from newer jQuery versions to check for // a cross-domain request here, rather than using Drupal.urlIsLocal() to // block scripts from all URLs that are not on the same site. if (!type && !Drupal.urlIsLocal(s.url)) { var content_type = xhr.getResponseHeader('content-type') || ''; if (content_type.indexOf('javascript') >= 0) { // Default to a safe data type. type = 'text'; } } return jquery_httpData.call(this, xhr, type, s); }; $.httpData.prototype = jquery_httpData.prototype; } /** * Attach all registered behaviors to a page element. * * Behaviors are event-triggered actions that attach to page elements, enhancing * default non-JavaScript UIs. Behaviors are registered in the Drupal.behaviors * object using the method 'attach' and optionally also 'detach' as follows: * @code * Drupal.behaviors.behaviorName = { * attach: function (context, settings) { * ... * }, * detach: function (context, settings, trigger) { * ... * } * }; * @endcode * * Drupal.attachBehaviors is added below to the jQuery ready event and so * runs on initial page load. Developers implementing AHAH/Ajax in their * solutions should also call this function after new page content has been * loaded, feeding in an element to be processed, in order to attach all * behaviors to the new content. * * Behaviors should use * @code * $(selector).once('behavior-name', function () { * ... * }); * @endcode * to ensure the behavior is attached only once to a given element. (Doing so * enables the reprocessing of given elements, which may be needed on occasion * despite the ability to limit behavior attachment to a particular element.) * * @param context * An element to attach behaviors to. If none is given, the document element * is used. * @param settings * An object containing settings for the current context. If none given, the * global Drupal.settings object is used. */ Drupal.attachBehaviors = function (context, settings) { context = context || document; settings = settings || Drupal.settings; // Execute all of them. $.each(Drupal.behaviors, function () { if ($.isFunction(this.attach)) { this.attach(context, settings); } }); }; /** * Detach registered behaviors from a page element. * * Developers implementing AHAH/Ajax in their solutions should call this * function before page content is about to be removed, feeding in an element * to be processed, in order to allow special behaviors to detach from the * content. * * Such implementations should look for the class name that was added in their * corresponding Drupal.behaviors.behaviorName.attach implementation, i.e. * behaviorName-processed, to ensure the behavior is detached only from * previously processed elements. * * @param context * An element to detach behaviors from. If none is given, the document element * is used. * @param settings * An object containing settings for the current context. If none given, the * global Drupal.settings object is used. * @param trigger * A string containing what's causing the behaviors to be detached. The * possible triggers are: * - unload: (default) The context element is being removed from the DOM. * - move: The element is about to be moved within the DOM (for example, * during a tabledrag row swap). After the move is completed, * Drupal.attachBehaviors() is called, so that the behavior can undo * whatever it did in response to the move. Many behaviors won't need to * do anything simply in response to the element being moved, but because * IFRAME elements reload their "src" when being moved within the DOM, * behaviors bound to IFRAME elements (like WYSIWYG editors) may need to * take some action. * - serialize: When an Ajax form is submitted, this is called with the * form as the context. This provides every behavior within the form an * opportunity to ensure that the field elements have correct content * in them before the form is serialized. The canonical use-case is so * that WYSIWYG editors can update the hidden textarea to which they are * bound. * * @see Drupal.attachBehaviors */ Drupal.detachBehaviors = function (context, settings, trigger) { context = context || document; settings = settings || Drupal.settings; trigger = trigger || 'unload'; // Execute all of them. $.each(Drupal.behaviors, function () { if ($.isFunction(this.detach)) { this.detach(context, settings, trigger); } }); }; /** * Encode special characters in a plain-text string for display as HTML. * * @ingroup sanitization */ Drupal.checkPlain = function (str) { var character, regex, replace = { '&': '&', "'": ''', '"': '"', '<': '<', '>': '>' }; str = String(str); for (character in replace) { if (replace.hasOwnProperty(character)) { regex = new RegExp(character, 'g'); str = str.replace(regex, replace[character]); } } return str; }; /** * Replace placeholders with sanitized values in a string. * * @param str * A string with placeholders. * @param args * An object of replacements pairs to make. Incidences of any key in this * array are replaced with the corresponding value. Based on the first * character of the key, the value is escaped and/or themed: * - !variable: inserted as is * - @variable: escape plain text to HTML (Drupal.checkPlain) * - %variable: escape text and theme as a placeholder for user-submitted * content (checkPlain + Drupal.theme('placeholder')) * * @see Drupal.t() * @ingroup sanitization */ Drupal.formatString = function(str, args) { // Transform arguments before inserting them. for (var key in args) { if (args.hasOwnProperty(key)) { switch (key.charAt(0)) { // Escaped only. case '@': args[key] = Drupal.checkPlain(args[key]); break; // Pass-through. case '!': break; // Escaped and placeholder. default: args[key] = Drupal.theme('placeholder', args[key]); break; } } } return Drupal.stringReplace(str, args, null); }; /** * Replace substring. * * The longest keys will be tried first. Once a substring has been replaced, * its new value will not be searched again. * * @param {String} str * A string with placeholders. * @param {Object} args * Key-value pairs. * @param {Array|null} keys * Array of keys from the "args". Internal use only. * * @return {String} * Returns the replaced string. */ Drupal.stringReplace = function (str, args, keys) { if (str.length === 0) { return str; } // If the array of keys is not passed then collect the keys from the args. if (!$.isArray(keys)) { keys = []; for (var k in args) { if (args.hasOwnProperty(k)) { keys.push(k); } } // Order the keys by the character length. The shortest one is the first. keys.sort(function (a, b) { return a.length - b.length; }); } if (keys.length === 0) { return str; } // Take next longest one from the end. var key = keys.pop(); var fragments = str.split(key); if (keys.length) { for (var i = 0; i < fragments.length; i++) { // Process each fragment with a copy of remaining keys. fragments[i] = Drupal.stringReplace(fragments[i], args, keys.slice(0)); } } return fragments.join(args[key]); }; /** * Translate strings to the page language or a given language. * * See the documentation of the server-side t() function for further details. * * @param str * A string containing the English string to translate. * @param args * An object of replacements pairs to make after translation. Incidences * of any key in this array are replaced with the corresponding value. * See Drupal.formatString(). * * @param options * - 'context' (defaults to the empty context): The context the source string * belongs to. * * @return * The translated string. */ Drupal.t = function (str, args, options) { options = options || {}; options.context = options.context || ''; // Fetch the localized version of the string. if (Drupal.locale.strings && Drupal.locale.strings[options.context] && Drupal.locale.strings[options.context][str]) { str = Drupal.locale.strings[options.context][str]; } if (args) { str = Drupal.formatString(str, args); } return str; }; /** * Format a string containing a count of items. * * This function ensures that the string is pluralized correctly. Since Drupal.t() is * called by this function, make sure not to pass already-localized strings to it. * * See the documentation of the server-side format_plural() function for further details. * * @param count * The item count to display. * @param singular * The string for the singular case. Please make sure it is clear this is * singular, to ease translation (e.g. use "1 new comment" instead of "1 new"). * Do not use @count in the singular string. * @param plural * The string for the plural case. Please make sure it is clear this is plural, * to ease translation. Use @count in place of the item count, as in "@count * new comments". * @param args * An object of replacements pairs to make after translation. Incidences * of any key in this array are replaced with the corresponding value. * See Drupal.formatString(). * Note that you do not need to include @count in this array. * This replacement is done automatically for the plural case. * @param options * The options to pass to the Drupal.t() function. * @return * A translated string. */ Drupal.formatPlural = function (count, singular, plural, args, options) { args = args || {}; args['@count'] = count; // Determine the index of the plural form. var index = Drupal.locale.pluralFormula ? Drupal.locale.pluralFormula(args['@count']) : ((args['@count'] == 1) ? 0 : 1); if (index == 0) { return Drupal.t(singular, args, options); } else if (index == 1) { return Drupal.t(plural, args, options); } else { args['@count[' + index + ']'] = args['@count']; delete args['@count']; return Drupal.t(plural.replace('@count', '@count[' + index + ']'), args, options); } }; /** * Returns the passed in URL as an absolute URL. * * @param url * The URL string to be normalized to an absolute URL. * * @return * The normalized, absolute URL. * * @see https://github.com/angular/angular.js/blob/v1.4.4/src/ng/urlUtils.js * @see https://grack.com/blog/2009/11/17/absolutizing-url-in-javascript * @see https://github.com/jquery/jquery-ui/blob/1.11.4/ui/tabs.js#L53 */ Drupal.absoluteUrl = function (url) { var urlParsingNode = document.createElement('a'); // Decode the URL first; this is required by IE <= 6. Decoding non-UTF-8 // strings may throw an exception. try { url = decodeURIComponent(url); } catch (e) {} urlParsingNode.setAttribute('href', url); // IE <= 7 normalizes the URL when assigned to the anchor node similar to // the other browsers. return urlParsingNode.cloneNode(false).href; }; /** * Returns true if the URL is within Drupal's base path. * * @param url * The URL string to be tested. * * @return * Boolean true if local. * * @see https://github.com/jquery/jquery-ui/blob/1.11.4/ui/tabs.js#L58 */ Drupal.urlIsLocal = function (url) { // Always use browser-derived absolute URLs in the comparison, to avoid // attempts to break out of the base path using directory traversal. var absoluteUrl = Drupal.absoluteUrl(url); var protocol = location.protocol; // Consider URLs that match this site's base URL but use HTTPS instead of HTTP // as local as well. if (protocol === 'http:' && absoluteUrl.indexOf('https:') === 0) { protocol = 'https:'; } var baseUrl = protocol + '//' + location.host + Drupal.settings.basePath.slice(0, -1); // Decoding non-UTF-8 strings may throw an exception. try { absoluteUrl = decodeURIComponent(absoluteUrl); } catch (e) {} try { baseUrl = decodeURIComponent(baseUrl); } catch (e) {} // The given URL matches the site's base URL, or has a path under the site's // base URL. return absoluteUrl === baseUrl || absoluteUrl.indexOf(baseUrl + '/') === 0; }; /** * Generate the themed representation of a Drupal object. * * All requests for themed output must go through this function. It examines * the request and routes it to the appropriate theme function. If the current * theme does not provide an override function, the generic theme function is * called. * * For example, to retrieve the HTML for text that should be emphasized and * displayed as a placeholder inside a sentence, call * Drupal.theme('placeholder', text). * * @param func * The name of the theme function to call. * @param ... * Additional arguments to pass along to the theme function. * @return * Any data the theme function returns. This could be a plain HTML string, * but also a complex object. */ Drupal.theme = function (func) { var args = Array.prototype.slice.apply(arguments, [1]); return (Drupal.theme[func] || Drupal.theme.prototype[func]).apply(this, args); }; /** * Freeze the current body height (as minimum height). Used to prevent * unnecessary upwards scrolling when doing DOM manipulations. */ Drupal.freezeHeight = function () { Drupal.unfreezeHeight(); $('<div id="freeze-height"></div>').css({ position: 'absolute', top: '0px', left: '0px', width: '1px', height: $('body').css('height') }).appendTo('body'); }; /** * Unfreeze the body height. */ Drupal.unfreezeHeight = function () { $('#freeze-height').remove(); }; /** * Encodes a Drupal path for use in a URL. * * For aesthetic reasons slashes are not escaped. */ Drupal.encodePath = function (item, uri) { uri = uri || location.href; return encodeURIComponent(item).replace(/%2F/g, '/'); }; /** * Get the text selection in a textarea. */ Drupal.getSelection = function (element) { if (typeof element.selectionStart != 'number' && document.selection) { // The current selection. var range1 = document.selection.createRange(); var range2 = range1.duplicate(); // Select all text. range2.moveToElementText(element); // Now move 'dummy' end point to end point of original range. range2.setEndPoint('EndToEnd', range1); // Now we can calculate start and end points. var start = range2.text.length - range1.text.length; var end = start + range1.text.length; return { 'start': start, 'end': end }; } return { 'start': element.selectionStart, 'end': element.selectionEnd }; }; /** * Add a global variable which determines if the window is being unloaded. * * This is primarily used by Drupal.displayAjaxError(). */ Drupal.beforeUnloadCalled = false; $(window).bind('beforeunload pagehide', function () { Drupal.beforeUnloadCalled = true; }); /** * Displays a JavaScript error from an Ajax response when appropriate to do so. */ Drupal.displayAjaxError = function (message) { // Skip displaying the message if the user deliberately aborted (for example, // by reloading the page or navigating to a different page) while the Ajax // request was still ongoing. See, for example, the discussion at // http://stackoverflow.com/questions/699941/handle-ajax-error-when-a-user-clicks-refresh. if (!Drupal.beforeUnloadCalled) { alert(message); } }; /** * Build an error message from an Ajax response. */ Drupal.ajaxError = function (xmlhttp, uri, customMessage) { var statusCode, statusText, pathText, responseText, readyStateText, message; if (xmlhttp.status) { statusCode = "\n" + Drupal.t("An AJAX HTTP error occurred.") + "\n" + Drupal.t("HTTP Result Code: !status", {'!status': xmlhttp.status}); } else { statusCode = "\n" + Drupal.t("An AJAX HTTP request terminated abnormally."); } statusCode += "\n" + Drupal.t("Debugging information follows."); pathText = "\n" + Drupal.t("Path: !uri", {'!uri': uri} ); statusText = ''; // In some cases, when statusCode == 0, xmlhttp.statusText may not be defined. // Unfortunately, testing for it with typeof, etc, doesn't seem to catch that // and the test causes an exception. So we need to catch the exception here. try { statusText = "\n" + Drupal.t("StatusText: !statusText", {'!statusText': $.trim(xmlhttp.statusText)}); } catch (e) {} responseText = ''; // Again, we don't have a way to know for sure whether accessing // xmlhttp.responseText is going to throw an exception. So we'll catch it. try { responseText = "\n" + Drupal.t("ResponseText: !responseText", {'!responseText': $.trim(xmlhttp.responseText) } ); } catch (e) {} // Make the responseText more readable by stripping HTML tags and newlines. responseText = responseText.replace(/<("[^"]*"|'[^']*'|[^'">])*>/gi,""); responseText = responseText.replace(/[\n]+\s+/g,"\n"); // We don't need readyState except for status == 0. readyStateText = xmlhttp.status == 0 ? ("\n" + Drupal.t("ReadyState: !readyState", {'!readyState': xmlhttp.readyState})) : ""; // Additional message beyond what the xmlhttp object provides. customMessage = customMessage ? ("\n" + Drupal.t("CustomMessage: !customMessage", {'!customMessage': customMessage})) : ""; message = statusCode + pathText + statusText + customMessage + responseText + readyStateText; return message; }; // Class indicating that JS is enabled; used for styling purpose. $('html').addClass('js'); // 'js enabled' cookie. document.cookie = 'has_js=1; path=/'; /** * Additions to jQuery.support. */ $(function () { /** * Boolean indicating whether or not position:fixed is supported. */ if (jQuery.support.positionFixed === undefined) { var el = $('<div style="position:fixed; top:10px" />').appendTo(document.body); jQuery.support.positionFixed = el[0].offsetTop === 10; el.remove(); } }); //Attach all behaviors. $(function () { Drupal.attachBehaviors(document, Drupal.settings); }); /** * The default themes. */ Drupal.theme.prototype = { /** * Formats text for emphasized display in a placeholder inside a sentence. * * @param str * The text to format (plain-text). * @return * The formatted text (html). */ placeholder: function (str) { return '<em class="placeholder">' + Drupal.checkPlain(str) + '</em>'; } }; })(jQuery); </script> </div> <!-- /block --><div class="block" data-bid="1791"> <div class="header"> <div class="container"> <a class="logo" href="/"> <div class="header-logo"></div> </a> <div class="topbar"> <ul class="loginbar pull-right"> <!--<li><a href="/support/us-reps">U.S. Reps</a></li>--> <li class="topbar-devider"></li> <li><i class="fa fa-globe"></i> <a href="/support/distributors">International Distributors</a></li> <li class="topbar-devider"></li> <li><a href="/contact">Contact</a></li> <li class="topbar-devider"></li> <li><a href="/blog">Blog</a></li> </ul> </div> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-responsive-collapse"> <span class="sr-only">Toggle navigation</span> <span class="fa fa-bars"></span> </button> </div> <div class="collapse navbar-collapse mega-menu navbar-responsive-collapse"> <div class="container"> <ul class="nav navbar-nav"> <li class="dropdown dropdown-items"> <a href="/inertial/nodes/" class="dropdown-toggle dropdown-menu-items-toggle"> Inertial Sensing </a> <div class="dropdown-menu-items dropdown-menu"> <div class="dropdown-menu-items-container"> <ul> <li class="dropdown-menu-item"> <a href="/inertial/gq7rtk"> <div class="dropdown-menu-item-img"> <!--<img src="/sites/default/files/gq7_web_product_sliderresized150x106-new-01_0.png" alt="3DM-GQ7">--> <img src="/sites/default/files/gq7-dropdown-image.png" alt="3DM-GQ7"> </div> <div class="dropdown-menu-item-title"> 3DM-GQ7 </div> <div class="dropdown-menu-item-description"> The highest accuracy, tactical grade GNSS/INS with RTK and dual antenna heading </div> </a> </li> <li class="dropdown-menu-item"> <!--<a href="/inertial-sensors/3DM-GV7-AHRS">--> <a href="/inertial-sensors/gv7-series"> <div class="dropdown-menu-item-img"> <!--<img src="/sites/default/files/styles/product_slider/public/3DM-GV7-1500x1500.png" alt="3DM-CX5" height="100" width="100">--> <img src="/sites/default/files/gv7-dropdown-image.png" alt="3DM-GV7" height="100" width="100"> </div> <div class="dropdown-menu-item-title"> 3DM-GV7 </div> <div class="dropdown-menu-item-description"> Ruggedized IP68 tactical grade IMU/VRU, IMU/AHRS, and INS </div> </a> </li> <!--<li class="dropdown-menu-item"> <a href="/inertial/c-series"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/cx5-gnss-ins.png" alt="3DM-CX5" height="100" width="100"> </div> <div class="dropdown-menu-item-title"> 3DM-CX5 </div> <div class="dropdown-menu-item-description"> High perfomance, industrial grade IMU, AHRS, VRU, GNSS/ INS for OEM applications </div> </a> </li>--> <li class="dropdown-menu-item"> <a href="/inertial/g-series"> <div class="dropdown-menu-item-img"> <!--<img src="/sites/default/files/3dmgx5-gnss-ins_1500x1500.png" alt="3DM-GX5" height="100" width="100">--> <img src="/sites/default/files/gx5-small-dropdown-image.png" alt="3DM-GX5" height="100" width="100"> </div> <div class="dropdown-menu-item-title"> G-Series </div> <div class="dropdown-menu-item-description"> High perfomance, industrial grade IMU, AHRS, VRU, GNSS/INS </div> </a> </li> <li class="dropdown-menu-item"> <a href="/inertial/c-series"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/cv7-dropdown-image.png" alt="3DMCV7-AHRS" height="100" width="100"> </div> <div class="dropdown-menu-item-title"> C-Series </div> <div class="dropdown-menu-item-description"> Tactical grade AHRS and VRU for OEM applications </div> </a> </li> <li class="dropdown-menu-item"> <a href="/inertial/m-series"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/m-series-dropdown-image.png" alt="M-Series"> </div> <div class="dropdown-menu-item-title"> M-Series </div> <div class="dropdown-menu-item-description"> Rugged attitude sensor for extreme environments </div> </a> </li> <li class="dropdown-menu-item"> <a href="/inertial/nodes/"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/all-sensors-dropdown.png" alt="all sensors image"> </div> <div class="dropdown-menu-item-title"> All sensors </div> <div class="dropdown-menu-item-description"> Interchangeable product line providing best price/performance across applications. </div> </a> </li> </ul> </div> </div> </li> <li class="dropdown dropdown-items"> <a href="/wireless" class="dropdown-toggle dropdown-menu-items-toggle"> Wireless Sensing </a> <div class="dropdown-menu-items dropdown-menu"> <div class="dropdown-menu-items-container"> <ul> <li class="dropdown-menu-item"> <a href="/wireless/nodes"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/note-men-img.png" alt="Nodes"> </div> <div class="dropdown-menu-item-title"> Nodes </div> <div class="dropdown-menu-item-description"> Wirelessly monitor strain, load, vibration, temperature, and other sensor measurements </div> </a> </li> <li class="dropdown-menu-item"> <a href="/wireless/gateways"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/geteways-men-img.png" alt="Gateways"> </div> <div class="dropdown-menu-item-title"> Gateways </div> <div class="dropdown-menu-item-description"> Connect wireless nodes to PC, cloud, or data acquisition system </div> </a> </li> <li class="dropdown-menu-item"> <a href="/software"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/sensor-connect-men-img.png" alt="SensorConnect"> </div> <div class="dropdown-menu-item-title"> SensorConnect </div> <div class="dropdown-menu-item-description"> PC software for device configuration, live data monitoring, and analysis </div> </a> </li> <li class="dropdown-menu-item"> <a href="https://sensorcloud.com/"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/sensor-cloud-men-img.png" alt="SensorCloud"> </div> <div class="dropdown-menu-item-title"> SensorCloud </div> <div class="dropdown-menu-item-description"> Cloud data storage, analysis, and alerts </div> </a> </li> </ul> </div> </div> </li> <!--<li class="dropdown dropdown-items"> <a href="/displacement" class="dropdown-toggle dropdown-menu-items-toggle"> Displacement </a> <div class="dropdown-menu-items dropdown-menu"> <div class="dropdown-menu-items-container"> <ul> <li class="dropdown-menu-item"> <a href="/displacement-sensors/S-LVDT"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/subminiature-lvdt-men-item.png" alt="Nodes"> </div> <div class="dropdown-menu-item-title"> Subminiature LVDT </div> <div class="dropdown-menu-item-description"> Subminiature, Free Core, Displacement Sensor </div> </a> </li> <li class="dropdown-menu-item"> <a href="/displacement-sensors/LVDT"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/microminiature-lvdt-men-item.png" alt="Gateways"> </div> <div class="dropdown-menu-item-title"> Microminiature LVDT </div> <div class="dropdown-menu-item-description"> Microminiature, Free Core, Displacement Sensor </div> </a> </li> <!--<li class="dropdown-menu-item"> <a href="/displacement-sensors/NC-LVDT"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/non-contact-lvdt-mun-item.png" alt="SensorConnect"> </div> <div class="dropdown-menu-item-title"> Non-Contact LVDT </div> <div class="dropdown-menu-item-description"> Non-Contact, Displacement Sensor </div> </a> </li> <li class="dropdown-menu-item"> <a href="/displacement-sensors/LS-LVDT"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/ls-lvdt-men-item.png" alt="SensorCloud"> </div> <div class="dropdown-menu-item-title"> LS-LVDT </div> <div class="dropdown-menu-item-description"> Long Stroke, Free Core, Displacement Sensor </div> </a> </li>--> <!--<li class="dropdown-menu-item"> <a href="/displacement-sensors/nodes#cbpf=.signal-conditioners"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/signal-conditioners-men-items.png" alt="SensorCloud"> </div> <div class="dropdown-menu-item-title"> Signal Conditioners </div> <div class="dropdown-menu-item-description"> High-performance and low cost DVRT signal conditioning modules </div> </a> </li> <li class="dropdown-menu-item"> <a href="/displacement-sensors/nodes"> <div class="dropdown-menu-item-img"> <img src="/sites/default/files/lvdt-menu-item-al.png" alt="SensorCloud"> </div> <div class="dropdown-menu-item-title"> All sensors </div> <!-- <div class="dropdown-menu-item-description"> </div> --> <!--</a> </li> </ul> </div> </div> </li>--> <!-- <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> Products </a> <ul class="dropdown-menu"> <li class="dropdown-submenu"> <a href="/wireless">Wireless Sensor Networks</a> <ul class="dropdown-menu"> <li><a href="/wireless/sensors">Wireless Nodes</a></li> <li><a href="/wireless/gateways">Gateways</a></li> </ul> </li> <li class="dropdown-submenu"> <a href="/inertial/nodes/">Inertial Sensing</a> <ul class="dropdown-menu"> <li><a href="/inertial/IMU">Inertial IMU</a></li> <li><a href="/inertial/AHRS">Inertial AHRS</a></li> <li><a href="/inertial/VRU">Inertial VRU</a></li> <li><a href="/inertial/INS">Inertial INS</a></li> <li><a href="/inertial/c-series">C-Series Sensors</a></li> <li><a href="/inertial/g-series">G-Series Sensors</a></li> <li><a href="/inertial/m-series">M-Series Sensors</a></li> <li><a href="/inertial/nodes/">All Sensors</a></li> </ul> </li> <li class="dropdown-submenu"> <a href="/displacement">Displacement Sensing</a> <ul class="dropdown-menu"> <li><a href="/displacement/nodes">Sensors</a></li> </ul> </li> <li><a href="/software">Software</a></li> <li><a href="https://www.microstrain.com/sites/default/files/pc8008_microstraincatalog_2020_opt.pdf" target="_blank" rel="noreferrer" >Catalog (pdf)</a></li> </ul> </li> --> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> Solutions </a> <ul class="dropdown-menu"> <li class="dropdown-submenu"> <a href="/applications">Applications</a> <ul class="dropdown-menu"> <li><a href="/applications/autonomous-unmanned-vehicles">Autonomous & Unmanned</a></li> <li><a href="/applications/robotics-automation">Robotics & Automation</a></li> <li><a href="/applications/off-highway">Off-Highway</a></li> <li><a href="/applications/map-track-survey">Map, Track & Survey</a></li> <li><a href="/applications/aerospace">Aerospace</a></li> <li><a href="/applications/monitor-test-measurement">Monitor, Test & Measurement</a></li> </ul> </li> <!-- <li class="dropdown-submenu"> <a href="/parameters" class="dropdown-toggle" data-toggle="dropdown"> Parameters </a> <ul class="dropdown-menu"> <li><a href="/parameters/acceleration">Acceleration</a></li> <li><a href="/parameters/displacement">Displacement</a></li> <li><a href="/parameters/humidity">Humidity</a></li> <li><a href="/parameters/Inclination">Inclination</a></li> <li><a href="/parameters/Load">Load</a></li> <li><a href="/parameters/Orientation">Orientation</a></li> <li><a href="/parameters/Pressure">Pressure</a></li> <li><a href="/parameters/Strain">Strain</a></li> <li><a href="/parameters/Temperature">Temperature</a></li> <li><a href="/parameters/Torque">Torque</a></li> <li><a href="/parameters/Vibration">Vibration</a></li> </ul> </li> --> <li><a href="/inertial/GQ7RTK/">GNSS/INS + RTK + SensorCloud RTK Solution</a></li> <li><a href="/ros">ROS</a></li> <li><a href="/software">Software</a></li> <!--<li><a href="/custom-oem">Custom OEM</a></li>--> <!--<li><a href="https://lordfulfillment.com/pdf/44/PC8008_MicroStrainCatalog.pdf" target="_blank" rel="noreferrer">Catalog (pdf)</a></li>--> </ul> </li> <li class="dropdown"> <a href="/content/sensing-support-center" class="dropdown-toggle" > Support </a> <ul class="dropdown-menu"> <li><a href="/content/sensing-support-center">Sensing Support Center</a></li> <li><a href="/support/knowledge-base">Knowledge Base</a></li> <li><a href="/support/connectivityapi">API & Connectivity</a></li> <li><a href="/support/RMA">Repairs & Warranty</a></li> <li><a href="/support/legacydocumentation">Legacy Product Documentation</a></li> <li><a href="/applications">Application Notes</a></li> <li><a href="/contact-support">Contact Support</a></li> <li><a href="https://www.surveymonkey.com/r/T2KPV6D">Feedback Survey</a></li> <li><a href="/support/quality">Quality</a></li> </ul> </li> <li class="dropdown"> <a href="https://www.microstrain.com/our-company" class="dropdown-toggle" > About </a> <ul class="dropdown-menu"> <li><a href="https://www.microstrain.com/our-company">Our Company</a></li> <li><a href="/company/events">Events</a></li> <li><a href="/company/news">News</a></li> <li><a href="https://spectris.wd3.myworkdayjobs.com/en-US/HBK_Careers/?locations=ab4bf8761beb10019d3518367f100000" target="_blank" rel="noreferrer" >Careers</a></li> <li><a href="https://www.parker.com/portal/site/PARKER/menuitem.4450f18f18c082cdfd40eae8237ad1ca/?vgnextoid=760b904cf58b2110VgnVCM100000c9040d0aRCRD&vgnextchannel=760b904cf58b2110VgnVCM100000c9040d0aRCRD&vgnextfmt=EN">Privacy</a></li> </ul> </li> <!-- <li> <a href="/search"><i class="search fa fa-search search-btn"></i></a> <div class="search-open"> <div class="input-group animated fadeInDown"> <form class="search-form" action="/search/node" method="post"> <input type="text" class="form-control" placeholder="Search"> <span class="input-group-btn"> <button class="btn-u" type="button">Go</button> </span> <form action="/search/site" method="get" id="apachesolr-panels-search-block" accept-charset="UTF-8"> <input title="Enter the terms you wish to search for." type="text" id="edit-apachesolr-panels-search-form" name="apachesolr_panels_search_form" value="" maxlength="128" class="form-text"> <input type="hidden" name="form_build_id" value="form-WoChqk1XN2oUdOkZrcHNXazz8we-KgzPDEWIPLiX5fY"> <input type="hidden" name="form_id" value="apachesolr_panels_search_block"> <input type="submit" id="edit-submit" name="op" value="Search" class="form-submit"> </form> </div> </div> </li> --> </ul> </div> </div> </div> <!-- .site-nav --> <!-- temporary Covid notice <div class="container-fluid text-center" style=" background: #FFB91D; padding: 8px; color: #000; font-size: 14px; "><span class="glyphicon glyphicon-info-sign" style=" font-size: 18px; "> </span> Learn about Parker’s safety-focused approach to COVID-19. <a href="https://discover.parker.com/COVID-19-CEO-Letter" target="_blank" rel="noreferrer" style=" color: #000; font-weight: bold; ">Read More</a> </div>--> <style> .header .mega-menu .dropdown-menu.dropdown-menu-items.dropdown-menu-items { background: #F2F2F2; padding: 40px 0; left: 0; border-top: none!important; border-bottom: none!important; width: 100%; } .header .mega-menu .dropdown-menu.dropdown-menu-items.dropdown-menu-items:after { content: ''; display: block; position: absolute; top: 0; width: 100vw; left: calc(-50vw + 585px); height: 100%; background: #F2F2F2; z-index: -1; } .dropdown-menu-items ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; justify-content: center; padding: 0; } .dropdown-menu-items .dropdown-menu-item { width: calc(16.666666% - 20px); margin: 0 10px; background: #fff; list-style-type: none; cursor: pointer; } .header .dropdown-menu.dropdown-menu-items li.dropdown-menu-item a { text-decoration: none; display: block; padding: 0; background: transparent!important; border: 0; color: #000; } .header .dropdown-menu.dropdown-menu-items li.dropdown-menu-item a:hover { color: #000!important; background: transparent!important; } .dropdown-menu-items .dropdown-menu-item:hover { box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.25); } .dropdown-menu-items .dropdown-menu-item .dropdown-menu-item-img { height: 124px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; align-items: center; justify-content: center; } .dropdown-menu-items .dropdown-menu-item .dropdown-menu-item-img img.all_sensors_icon { width: auto; } .dropdown-menu-items .dropdown-menu-item:hover .dropdown-menu-item-title { color: #4296B4; } .dropdown-menu-items .dropdown-menu-item-title { padding: 10px; font-weight: 600; } .dropdown-menu-items .dropdown-menu-item-description { padding: 10px; padding-top: 0; } .dropdown-menu-items .dropdown-menu-item-img img { display: block; width: 100%; height: auto; } .header .navbar-nav>li>a { font-family: 'Open Sans',sans-serif!important; font-weight: 600; } .header .navbar-toggle { margin-top: -6px; } @media screen and (max-width: 1200px) { .header .mega-menu .dropdown-menu.dropdown-menu-items.dropdown-menu-items:after { left: calc(-50vw + 485px); } .dropdown-menu-items .dropdown-menu-item { width: calc(16.666666% - 10px); margin: 0 5px; } .dropdown-menu-items .dropdown-menu-item .dropdown-menu-item-img { height: auto; } } @media screen and (max-width: 992px) { .dropdown-menu-items ul { flex-wrap: wrap; } .dropdown-menu-items .dropdown-menu-item { width: calc(33.3333333% - 20px); margin: 0 10px; margin-bottom: 20px; } .header .mega-menu .dropdown-menu.dropdown-menu-items.dropdown-menu-items { background: transparent; padding-top: 20px; padding-bottom: 0; } .header .navbar-collapse.collapse.in.mega-menu-items-open { height: 100vh!important; padding-bottom: 100px!important; overflow-x: hidden; } .overflow-h { overflow: hidden !important; } } @media screen and (max-width: 580px) { .dropdown-menu-items .dropdown-menu-item { width: calc(50% - 20px); } .header .mega-menu .dropdown.dropdown-items { position: relative; } } @media screen and (min-width: 992px) { .header .navbar-nav { margin-right: -15px; } } @media screen and (min-width: 992px) and (max-width: 1200px) { .header .navbar-collapse { height: 90px !important; } .header .navbar-nav { margin-top: 30px; } } </style> <script> // (function ($) { // $(document).ready(function() { // console.log('test'); // $('.dropdown-menu-items-toggle').click(function() { // if (!$(this).parent().hasClass('open')) { // $('html, body').addClass('overflow-h'); // $(this).closest('.mega-menu').addClass('mega-menu-items-open'); // } // else { // $('html, body').removeClass('overflow-h'); // $(this).closest('.mega-menu').removeClass('mega-menu-items-open'); // } // }); // $('.navbar-toggle').click(function() { // $('html, body').removeClass('overflow-h'); // $('.mega-menu').removeClass('mega-menu-items-open'); // }); // $('.dropdown-toggle:not(.dropdown-menu-items-toggle)').click(function() { // $('html, body').removeClass('overflow-h'); // $('.mega-menu').removeClass('mega-menu-items-open'); // }); // }); // })(jQuery); document.addEventListener("DOMContentLoaded", function() { document.querySelectorAll('.dropdown-menu-items-toggle')[0].addEventListener("click", function() { if (!this.parentNode.classList.contains('open')) { document.querySelectorAll('html, body')[0].classList.add('overflow-h'); document.querySelectorAll('.mega-menu')[0].classList.add('mega-menu-items-open'); } else { document.querySelectorAll('html, body')[0].classList.remove('overflow-h'); document.querySelectorAll('.mega-menu')[0].classList.remove('mega-menu-items-open'); } }); document.querySelectorAll('.navbar-toggle')[0].addEventListener("click", function() { document.querySelectorAll('html, body')[0].classList.remove('overflow-h'); document.querySelectorAll('.mega-menu')[0].classList.remove('mega-menu-items-open'); }); document.querySelectorAll('.dropdown-toggle:not(.dropdown-menu-items-toggle)')[0].addEventListener("click", function() { document.querySelectorAll('html, body')[0].classList.remove('overflow-h'); document.querySelectorAll('.mega-menu')[0].classList.remove('mega-menu-items-open'); }); if (document.getElementById('second-navigation-wrapper')) { window.onscroll = function() {myFunction()}; var navbar = document.getElementById("second-navigation-wrapper"); var sticky = navbar.offsetTop; function myFunction() { if (window.pageYOffset >= sticky) { navbar.classList.add("sticky") } else { navbar.classList.remove("sticky"); } } } }); </script></div> <!-- /block --> <div class="breadcrumbs"> <div class="container"> <h1 class="pull-left">Aerospace and Defense</h1> <ul class="breadcrumb"><li><a href="/">Home</a></li><li><a href="/applications">MicroStrain Applications</a></li><li class="active">Aerospace and Defense</li></ul> </div> </div> <div id="main"> <div class="container-fluid"> <section id="content"> <div id="content-area"> <section class="panel-display panel-1col-clean clearfix"> <div class="panel-pane pane-custom pane-1" > <style> .panel-pane.pane-custom.pane-1 { margin-top:0; } .auto-header { background:url(/sites/default/files/applications/files/maskgroup_helicopter.png) center/cover no-repeat; width:100%; } .auto-header::before { content: ''; display: block; position: absolute; width: 393px; height: 212px; top: 233px; left: 33%; background:url(/sites/default/files/applications/files/vector.png) center/contain no-repeat; } .auto-title { font-style: normal; font-weight: bold; font-size: 40px; line-height: 54px; margin-bottom:39px; color: #FFFFFF; } .auto-body { font-style: normal; font-weight: normal; font-size: 16px; line-height: 27px; color: #FFFFFF; max-width:762px; } .auto-body p { margin-bottom:39px; color: #FFFFFF; } .auto-header-inner { max-width:1170px; margin:0 auto; padding: 78px 15px; overflow: hidden; } .auto-info { overflow: hidden; background: #E5E5E5; z-index: 9; overflow: visible; padding: 0 15px 36px; background: #E5E5E5; } .auto-info-inner { max-width:1170px; margin:0 auto; } .auto-info-pic { float: left; width:310px; background:#fff; margin-right:36px; position:relative; top:-35px; z-index:9; } .auto-info-pic-inner { background: linear-gradient(180deg, rgba(66, 66, 66, 0.2) 0%, rgba(66, 66, 66, 0) 43.63%); padding:42px 0 47px; } .auto-info-pic-img { text-align:center; } .auto-info-pic-title { font-style: normal; font-weight: normal; font-size: 24px; line-height: 28px; text-align: center; text-transform: uppercase; color: #555555; margin-top:52px; } .auto-info-pic:first-child .auto-info-pic-title { margin-top: 72px; } .auto-info-pic-subtitle { font-style: normal; font-weight: normal; font-size: 15px; line-height: 26px; display: flex; align-items: center; text-align: center; color: #333333; margin-top: 21px; max-width: 247px; text-align: center; margin: 0 auto; margin-top: 21px; } .auto-info-pic-button { text-align:center; margin-top:20px; } .auto-info-pic-button a { font-style: normal; font-weight: normal; font-size: 16px; line-height:41px; display: inline-block; align-items: center; text-align: center; color:#fff; width:139px; background: #E42D19; border:1px solid #E42D19; } .auto-info-pic-button a:hover { color:#E42D19!important; background: #fff; opacity:0.8; text-decoration:none; } .auto-info-text { max-width:412px; margin-left:27px; padding-top:75px; } .auto-info-text-title { font-style: normal; font-weight: normal; font-size: 40px; line-height: 54px; color: #555555; } .auto-info-text-text { font-style: normal; font-weight: normal; font-size: 15px; line-height: 26px; margin-top:18px; display: flex; align-items: center; color: #333333; } .auto-info-text-button a { background: #4296B4; width:179px; height:46px; line-height:46px; color:#fff; font-size: 18px; display: flex; align-items: center; text-align: center; color: #FFFFFF; text-align:center; margin-top:26px; display: inline-block; border:1px solid #4296B4; line-height: 40px; } .auto-info-text-button a:hover { color:#4296B4!important; background: #fff; text-decoration:none; } .views-row { max-width:1170px; margin:0 auto; } @media (min-width:1050px) { .views-row { padding-left:100px; padding-right:100px; } } .views-row>span { overflow: hidden; display: block; max-width: 838px; } .views-row p.application-media-type { width: 220px; } .auto-page-title { text-align:center; font-size: 40px; line-height: 54px; text-align: center; color: #555555; margin-top:30px; margin-bottom:16px; } .panel-separator{ clear:both; } @media (min-width:1200px) { .auto-header-inner { padding-left:0; padding-right:0; } } @media (min-width:1200px) { .auto-info { padding-left:0; padding-right:0; } } @media (min-width:1176px) { .auto-info-text { float:left; } } @media screen and (max-width: 900px) { .auto-header::before { display: none; } } </style> <div class="auto-header"> <div class="auto-header-inner"> <div class="auto-title">Aerospace & Defense:<br> Aircraft & Helicopter Health Monitoring, <br>Condition Based Maintenance, and Navigation</div> <div class="auto-body"> <p>MicroStrain's advanced sensor systems are extensively deployed on commercial and defense aerospace platforms, including helicopters, unmanned aerial vehicles (UAVs) and commercial aircraft. Our synchronized wireless sensor networks feature fully-calibrated miniature sensors and extended range communications for use in a variety of applications, including health monitoring and management, predictive maintenance and navigation.</p> <p>MicroStrain’s wireless sensor networks will help ensure integrity, safety, and reliability of aircraft, rotorcraft and rotating components by assessing long-term performance and preventing costly repairs and downtime while our miniature, lightweight inertial sensors can be deployed in a variety of defense and commercial platforms to improve the accuracy and reliability of aerial navigation and tracking.</p> </div> </div> </div> <div class="auto-info clearfix"> <div class="auto-info-inner"> <div class="auto-info-pic"> <div class="auto-info-pic-inner"> <div class="auto-info-pic-img"> <img src="/sites/default/files/applications/3dm-gx5-45_2.png"> </div> <div class="auto-info-pic-title"> inertial sensors </div> <div class="auto-info-pic-subtitle"> To learn more about our line of inertial sensors </div> <div class="auto-info-pic-button"> <a href="/inertial">CLICK HERE</a> </div> </div> </div> <div class="auto-info-pic"> <div class="auto-info-pic-inner"> <div class="auto-info-pic-img"> <img src="/sites/default/files/applications/wireless-sensors-2-update_1.png"> </div> <div class="auto-info-pic-title"> wireless sensors </div> <div class="auto-info-pic-subtitle"> To learn more about our line of wireless sensors </div> <div class="auto-info-pic-button"> <a href="/wireless/nodes">CLICK HERE</a> </div> </div> </div> <div class="auto-info-text"> <div class="auto-info-text-title">Contact Sales</div> <div class="auto-info-text-text">Our sales team is ready to help! Whether you have specific questions about a product, or are curious about how to configure your sensor system, or you need help identifying the right product for your application, we are eager to speak with you. Simply fill out the form below and we’ll respond within 48 hours.</div> <div class="auto-info-text-button"> <a href="/contact-sales">Contact Sales</a> </div> </div> </div> </div> <div class="auto-page-title">Case Studies and Applications</div> </div><div class="panel-separator"></div><div class="panel-pane pane-views-panes pane-applications-aerospace" > <div class="views-row views-row-1 views-row-odd views-row-first"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/content/gq7-vs-gx5-product-comparison-test-report">GQ7 vs GX5 Product Comparison Test Report</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/content/gq7-vs-gx5-product-comparison-test-report"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/hummer_gq7gx5-45_overlay_1.png?itok=GR2L_fhO" width="220" height="151" alt="" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>Ian Moore, Field Application Engineer</small></h5> <p>The new 3DM-GQ7-GNSS/INS builds on the success of the 3DMGX5-GNSS/INS and adds many features desired by customers which resolve common challenges in specific use cases. This test report highlights four evolutionary improvements.</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/inertial-sensors/3dm-gq7" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GQ7-GNSS/INS</a> <a href="/inertial-sensors/3dm-gx5-45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GX5-GNSS/INS</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-2 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/content/microstrain-imu-integration-with-ardupilot">MicroStrain IMU Integration with Ardupilot</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/content/microstrain-imu-integration-with-ardupilot"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/csu_fixedwing_0.jpg?itok=5F6r44-n" width="220" height="124" alt="" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>Asa Davis, Zach Fuchs, Erin Gunn, Rachel Masters, Christopher Robertson, Benjamin Say, David Schenkenberger</small></h5> <p>Drones already have their own internal IMU's, but those IMU's lack the accuracy needed for larger flight tasks. For shorter flights and recreational flying, the internal IMU is precise enough to keep the drone running as expected. A</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/inertial-sensors/3dm-cx5-25" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-CX5-25</a> <a href="/inertial-sensors/3dm-cx5-45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-CX5-GNSS/INS</a> <a href="/inertial-sensors/3dm-gx5-45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GX5-GNSS/INS</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-3 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/content/beta-technologies-evtol-development-takes-off-with-microstrain-sensors">Beta Technologies’ eVTOL Development Takes Off with MicroStrain Sensors</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/content/beta-technologies-evtol-development-takes-off-with-microstrain-sensors"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/beta-aircraft_cropped-web350px_0.jpg?itok=6D6wmJ7h" width="220" height="114" alt="" /></a> <p class="text-center bg-primary application-media-type">Case Study</p> </div> </div> <div class="col-md-8"> <h5><small></small></h5> <p>Technology evolves as we improve how information is gathered, analyzed and implemented into various applications. For instance, Vertical Takeoff and Landing aircraft (-VTOL) can take off, hover and land vertically.</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/g-link-200" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-Link-200</a> <a href="/wireless-sensors/sg-link-200" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-Link-200</a> <a href="/wireless-sensors/v-link-200" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">V-LINK-200</a> <a href="/wireless-sensors/wsda-200-usb" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-200-USB</a> <a href="/wireless-sensors/wsda-2000" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-2000</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a> <a href="/inertial-sensors/3dm-gx5-25" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GX5-25</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-4 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/content/simplifying-structural-health-monitoring-hbk-weldable-strain-gauges-and-microstrain-wireless">Simplifying Structural Health Monitoring: HBK Weldable Strain Gauges and MicroStrain Wireless Technology</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/content/simplifying-structural-health-monitoring-hbk-weldable-strain-gauges-and-microstrain-wireless"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/mono-rail-city%20Small.jpeg?itok=DqxYWOTZ" width="220" height="146" alt="" title="Rail Application Image" /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>Joe Beckwith</small></h5> <p>Structural health monitoring (SHM) is critical for ensuring the safety and longevity of infrastructure, machinery, and equipment. HBK offers two innovative solutions that make SHM easy: HBK Weldable Strain Gauges and MicroStrain by HBK Wireless Technology</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/sg-link-200" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-Link-200</a> <a href="/wireless-sensors/sg-link-200-oem" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-Link-200-OEM</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-5 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/content/energy-efficient-drone-fleets">Energy Efficient Drone Fleets</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/content/energy-efficient-drone-fleets"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/quadcoptercmcrop1_3.jpg?itok=guWUh0iB" width="220" height="150" alt="Quadcopter with GX5 GNSS/INS sensor" title="Quadcopter with GX5 GNSS/INS sensor" /></a> <p class="text-center bg-primary application-media-type">Case Study</p> </div> </div> <div class="col-md-8"> <h5><small>Thiago A. Rodrigues, Jay Patrikar, Bastian Wagner, Sebastian Scherer, Constantine Samaras</small></h5> <p>Parker LORD sponsors research to model energy consumption for quadcopter package delivery drones</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/inertial-sensors/3dm-gx5-45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GX5-GNSS/INS</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-6 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/content/magnetometer-vs-dual-antenna-heading-in-fixed-wing-aircraft">Magnetometer vs Dual-Antenna Heading in Fixed-Wing Aircraft </a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/content/magnetometer-vs-dual-antenna-heading-in-fixed-wing-aircraft"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/fixed-wing_aircraft_image_1.jpg?itok=1OL9wy23" width="220" height="165" alt="" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>Ian Moore, Field Application Engineer</small></h5> <p>This report compares the steps necessary to use magnetometer vs dual-antenna as a heading source for a Cessna 150M flown in a repeated flight profile.</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/inertial-sensors/3dm-gq7" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GQ7-GNSS/INS</a> <a href="/inertial-sensors/3dm-rtk" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-RTK</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-7 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/wireless-torque-monitoring-torque-link">Wireless Torque Monitoring </a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/wireless-torque-monitoring-torque-link"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/torque-monitoring_appnote53.jpg?itok=_TbDNgVA" width="220" height="154" alt="" /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>Parker Hannifin MicroStrain</small></h5> <p>Patented Near Field Communications and Power for Wireless Torque Monitoring </p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/taxonomy/term/9" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Wireless Sensor Networks</a> <a href="/wireless-sensors/nodes" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Wireless Sensor Networks</a> <a href="/wireless-sensors/torque-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">TORQUE-LINK</a> <a href="/wireless-sensors/torque-link-200" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Torque-Link-200</a> <a href="/wireless-sensors/wsda-base" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA 104</a> <a href="/wireless-sensors/wsda-1500" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-1500</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-8 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/helicopter-damage-tracking">Energy Harvesting Wireless Sensors for Helicopter Damage Tracking </a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/helicopter-damage-tracking"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/Applications-Aerospace-Rotocraft-EnergyHarvesting.png?itok=JGdfdAEZ" width="165" height="220" alt="Energy Harvesting Wireless Sensors for Helicopter Damage Tracking" title="Energy Harvesting Wireless Sensors for Helicopter Damage Tracking" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>Authored by Arms et al., and featured in American Helicopter Society: 2006</small></h5> <p>Wireless sensor networks with integrated energy harvesting capabilities demonstrate autonomous helicopter pitch link monitoring and condition based maintenance for NAVAIR.</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li>None</li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-9 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/tracking-pitch-link">Tracking Pitch Link Dynamic Loads</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/tracking-pitch-link"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/Tracking%20Pitch%20Link%20Dynamic%20Loads%20with%20Energy%20Harvesting%20Wireless%20Sensors.png?itok=VALUBZAA" width="180" height="220" alt="Tracking Pitch Link Dynamic Loads with Energy Harvesting Wireless Sensors" title="Tracking Pitch Link Dynamic Loads with Energy Harvesting Wireless Sensors" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>Authored by Arms et al., and featured in American Helicopter Society: 2007</small></h5> <p>MicroStrain’s wireless sensor system is demonstrated in flight tests for direct load monitoring on Bell M412 rotating components along side energy harvesting and energy aware operating modes.</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li>None</li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-10 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/flight-testing-wireless-network">Flight Testing of Wireless Sensor Network for Rotorcraft SHUMS</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/flight-testing-wireless-network"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/Flight%20Testing%20of%20Wireless%20Sensing%20Networks%20for%20Rotorcraft%20Structural%20Health%20and%20Usage%20Management%20Systems.png?itok=HLCrm5-2" width="202" height="220" alt="" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>Authored by Arms et al., for Australian International Aerospace Congress: 2011</small></h5> <p>Synchronized wireless and hard-wired sensor network on rotating components includes energy harvesting to eliminate battery maintenance and improve SHUMS on Sikorsky MH-60S. </p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless/sg-link-rgd" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK-RGD</a> <a href="/inertial/3dm-gx4-15" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">3DM-GX4-15</a> <a href="/inertial/3dm-gx4-25" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">3DM-GX4-25</a> <a href="/inertial/3dm-gx4-35" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">3DM-GX4-35</a> <a href="/inertial/3dm-gx4-45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">3DM-GX4-45</a> <a href="/inertial-sensors/3dm-rq1" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">3DM-RQ1</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-11 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/nasa-deploys-microstrain-wireless-network">NASA deploys MicroStrain Wireless Sensor Network</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/nasa-deploys-microstrain-wireless-network"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/NASA%20Case%20Study.png?itok=i0MLG7ry" width="220" height="182" alt="" /></a> <p class="text-center bg-primary application-media-type">Case Study</p> </div> </div> <div class="col-md-8"> <h5><small>Parker MicroStrain</small></h5> <p>A distributed network of MicroStrain’s wireless sensors and its cloud-based data management portal, SensorCloud, were used by NASA to monitor the affects of acoustic shock on Kennedy Space Center equipment. </p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/g-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK</a> <a href="/wireless-sensors/sg-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK</a> <a href="/wireless-sensors/wsda-1500" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-1500</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-12 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/sensors-displacement-measuring">Sensors for Displacement Measuring</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/sensors-displacement-measuring"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/DVRT-AppNoteThumb.jpg?itok=G-VobBSp" width="220" height="121" alt="DVRT-Displacement-Sensing-Industrial-Manufacturing" title="DVRT-Displacement-Sensing-Industrial-Manufacturing" /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>MicroStrain</small></h5> <p>Sensors for Displacement Measuring</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/wsda-base" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA 104</a> <a href="/wireless-sensors/wsda-1500" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-1500</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a> <a href="/displacement-sensors/nodes" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Displacement Sensors</a> <a href="/displacement/non-contact-dvrt-sensors" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Non-Contact DVRT Sensors</a> <a href="/displacement/signal-conditioners" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Signal Conditioners</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-13 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/integrating-wireless-systems-and-rotorcraft-hums">Integrating Wireless Systems and Rotorcraft HUMS</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/integrating-wireless-systems-and-rotorcraft-hums"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/HUMS_1Thumb.jpg?itok=L5l_wrs4" width="220" height="123" alt="" /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>MicroStrain</small></h5> <p>Optimize communication, data analysis, and battery life with a Wireless Network</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless/sg-link-rgd" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK-RGD</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-14 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/inertial-sensing-unmanned-air-vehicles">Inertial Sensing for Unmanned Air Vehicles</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/inertial-sensing-unmanned-air-vehicles"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/060117-n-4935l-002.jpg?itok=2P7xoUXZ" width="220" height="173" alt="" /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>Parker MicroStrain</small></h5> <p></p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/inertial-sensors/3dm-gx5-15" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GX5-15</a> <a href="/inertial-sensors/3dm-gx5-25" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GX5-25</a> <a href="/inertial-sensors/3dm-gx5-45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">MicroStrain 3DM-GX5-GNSS/INS</a> <a href="/Inertial/3dm-gq4-45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">3DM-GQ4-45 GNSS / INS</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-15 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/solution-brief-reducing-flight-test-cycle-time-weeks-hours">White Paper: Reducing Flight Test Cycle Time from Weeks to Hours</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/solution-brief-reducing-flight-test-cycle-time-weeks-hours"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/solutionbrief_scflighttesting.jpg?itok=-QfFBzEg" width="220" height="96" alt="" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>D. O'Neil, MicroStrain; S. Low, Boeing Military Aircraft Corp.</small></h5> <p>Immediate data feedback allowed flight engineers to make critical adjustments shortly after each test, enabling multiple tests per day. Previous test programs required week-long delays between flights for data analysis.</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/g-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK</a> <a href="/wireless-sensors/g-link-2" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK-2</a> <a href="/wireless-sensors/sg-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK</a> <a href="/wireless-sensors/tc-link-1ch" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">TC-LINK-1CH</a> <a href="/wireless-sensors/tc-link-6ch" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">TC-LINK-6CH</a> <a href="/wireless-sensors/v-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">V-LINK</a> <a href="/wireless-sensors/gateways" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Wireless Sensor Gateways | LORD Sensing Systems</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a> <a href="/inertial/sensors" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Inertial Sensors</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-16 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/unmanned-rotorcraft-flight-testing-using-wireless-sensor-networks-data-collection-and">SensorCloud and Wireless Sensor Data Collection Networks Speed Unmanned Rotorcraft Flight Testing </a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/unmanned-rotorcraft-flight-testing-using-wireless-sensor-networks-data-collection-and"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/erf2015_0111_paper_0.jpg?itok=m9wNcG4f" width="220" height="101" alt="" /></a> <p class="text-center bg-primary application-media-type">Case Study</p> </div> </div> <div class="col-md-8"> <h5><small>Dan O'Neil, Steve Low</small></h5> <p>Aircraft flight test has traditionally been expensive and time consuming to accomplish, requiring complex hardware design and integration and extensive operational test teams to address aircraft downtime for instrumentation maintenance and calibration, </p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/g-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK</a> <a href="/wireless-sensors/sg-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK</a> <a href="/wireless-sensors/v-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">V-LINK</a> <a href="/wireless-sensors/wsda-base-analog" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-BASE-ANALOG</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-17 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/energy-harvesting-helicopter-rotor-hum-system-development">Energy Harvesting Helicopter Rotor HUM System Development</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/energy-harvesting-helicopter-rotor-hum-system-development"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/AgustaWestland-Lord%20Wireless%20HUMS.png?itok=lng4CJMh" width="220" height="116" alt="" /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>D.Wells, A.Westland; T. Frattini, AgustaWestland; D.Churchill, S. DiStasi, Parker MicroStrain Sensing Systems</small></h5> <p>Development of a helicopter on-rotor HUM system powered by vibration energy harvesting</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/g-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK</a> <a href="/wireless-sensors/g-link-2" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK-2</a> <a href="/wireless-sensors/iepe-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">IEPE-LINK</a> <a href="/wireless-sensors/rtd-link-lxrs" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">RTD-LINK-LXRS</a> <a href="/wireless-sensors/wsda-1500" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-1500</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a> <a href="/products/node-commander%C2%AE" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Node Commander®</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-18 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/wireless-torque-monitoring-unmanned-rotorcraft-flight-test-applications">Wireless Torque Monitoring for Unmanned Rotorcraft Flight Test Applications</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/wireless-torque-monitoring-unmanned-rotorcraft-flight-test-applications"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/firescout-torque-link.jpg?itok=pcTbmUiR" width="220" height="127" alt="Fire Scout Torque Link" title="Fire Scout Torque Link" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>D. O'Neil, C. Townsend; MicroStrain, C. Hodgkins, NAVAir Pax River</small></h5> <p>Effective and accurate torque monitoring has been, and will continue to be, an ongoing challenge in the industrial, agricultural, and aerospace arenas. Torque measurements are useful as an indicator of mechanical system health and desirable for test and p</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless/sg-link-oem-lxrs" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK-OEM-LXRS</a> <a href="/wireless-sensors/wsda-1500" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-1500</a> <a href="/wireless-sensors/wsda-base-analog" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-BASE-ANALOG</a> <a href="/wireless/sck" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SensorCloud™</a> <a href="/products/node-commander%C2%AE" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Node Commander®</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-19 views-row-odd"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/synchronized-system-wireless-sensing-rfid-data-aggregation-and-remote-reporting">Synchronized System for Wireless Sensing, RFID, Data Aggregation and Remote Reporting</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/synchronized-system-wireless-sensing-rfid-data-aggregation-and-remote-reporting"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/Synchronized%20System%20for%20Wireless%20Sensing%2C%20RFID%2C%20Data%20Aggregation%2C%20%26%20Remote%20Reporting.png?itok=5tVK4Lx3" width="220" height="208" alt="Synchronized System for Wireless Sensing, RFID, Data Aggregation, & Remote Repor" title="Synchronized System for Wireless Sensing, RFID, Data Aggregation, & Remote Reporting" /></a> <p class="text-center bg-primary application-media-type">White Paper</p> </div> </div> <div class="col-md-8"> <h5><small>Authored by Arms et al., and featured in American Helicopter Society: 2009</small></h5> <p>Integrated structural health monitoring and reporting system for use on pitch link of Navy Bell M412 helicopter synchronizes distributed miniature sensors and active RFID in a low-power network. </p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/iepe-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">IEPE-LINK</a> <a href="/wireless-sensors/wsda-1500" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-1500</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-20 views-row-even"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/fixed-wing-wireless-health-monitoring">Fixed-Wing Wireless Health Monitoring</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/fixed-wing-wireless-health-monitoring"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/Fixed-wing_Thumb.jpg?itok=ZcnRTFSt" width="220" height="142" alt="Fixed Wing Health Monitoring" title="Fixed Wing Health Monitoring" /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>MicroStrain</small></h5> <p>Instant, comprehensive reporting of aircraft health, from nose to rudder</p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless-sensors/g-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK</a> <a href="/wireless-sensors/g-link-2" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">G-LINK-2</a> <a href="/wireless-sensors/iepe-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">IEPE-LINK</a> <a href="/wireless-sensors/sg-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK</a> <a href="/wireless/sg-link-oem-lxrs" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK-OEM-LXRS</a> <a href="/wireless/sg-link-rgd" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK-RGD</a> <a href="/wireless-sensors/v-link" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">V-LINK</a> <a href="/wireless-sensors/wsda-base" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA 104</a> <a href="/wireless-sensors/wsda-1500" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">WSDA-1500</a> <a href="/wireless-sensors/sdk" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Software Development Kit</a> <a href="/products/node-commander%C2%AE" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Node Commander®</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> <div class="views-row views-row-21 views-row-odd views-row-last"> <span><div class="col-md-12"> <div class="news-v3 ms-title"><h2><a href="/applications/rotorcraft-wireless-health-monitoring">Optimize Cost of Ownership: Rotorcraft Wireless Health Monitoring</a></h2></div> </div> <div class="col-md-4"> <div class="image-with-text"> <a href="/applications/rotorcraft-wireless-health-monitoring"><img typeof="foaf:Image" src="https://www.microstrain.com/sites/default/files/styles/medium/public/Rotorcraft_Wireless_Health_Monitoring_1%2000b%20%282%29.jpg?itok=5esUi4Mu" width="220" height="157" alt="Rotorcraft Wireless Health Monitoring " title="Rotorcraft Wireless Health Monitoring " /></a> <p class="text-center bg-primary application-media-type">Application Note</p> </div> </div> <div class="col-md-8"> <h5><small>MicroStrain</small></h5> <p> MicroStrain’s distributed rotorcraft wireless health monitoring systems provide a wealth of information about aircraft component health and usage. </p> <div> <ul class="list-inline tags-v1"> <li> <code>Related Products:</code> </li> <li><a href="/wireless/sg-link-rgd" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">SG-LINK-RGD</a></li> </ul> </div> </div> <div class="clearfix clear-both"><hr></div></span> </div> </div></section> </div> </section> </div> </div> <div class="block" data-bid="1556"> <style> .shop-product-prices, .price, #price, #cart-form-products { display: none; } .mouser.where-to-buy-btn.row { display: none; } </style> <script> (function($) { var protocol = location.protocol; var slashes = protocol.concat("//"); var host = slashes.concat(window.location.hostname); var ipJson, countryJson; // Function to check if the current page is either nodes or gateways function isExemptPage() { var currentPath = window.location.pathname; // Add conditions for pages where the script should be turned off return currentPath.includes("/nodes") || currentPath.includes("/gateways"); } // Only run the logic if we are NOT on exempt pages if (!isExemptPage()) { $.getJSON("https://api.ipify.org?format=jsonp&callback=?", function(json) { ipJson = json; var ip = ipJson.ip; //console.log("Success! IP: " + ipJson.ip); var country = ""; $.getJSON('https://ipapi.co/' + ip + '/json', function(json) { countryJson = json; country = countryJson.country; console.log("Country Code ipapi: " + country); if (country != "US") { // Hide prices and Mouser button for non-US users $(".shop-product-prices, .price, #price").remove(); $(".shop-product-prices").append('Please visit our <a href="/support/international">distributor</a> section to find a distributor near you.'); $("#cart-form-products").after('Please visit our <a href="/support/international">distributor</a> section to find a distributor near you.'); // Remove and adjust Mouser button $(".mouser.where-to-buy-btn.row #mouser-button").remove(); $(".mouser.where-to-buy-btn.row div").removeClass("col-md-3 col-md-4").addClass("col-md-6"); } else { // Show prices and Mouser button for US users $(".shop-product-prices, .price, #price, #cart-form-products").remove(); } if (country == "US") { $('.mouser.where-to-buy-btn.row').show(); } else { // Remove and adjust Mouser button for non-US users $(".mouser.where-to-buy-btn.row #mouser-button").remove(); $(".mouser.where-to-buy-btn.row div").removeClass("col-md-3 col-md-4").addClass("col-md-6"); $('.mouser.where-to-buy-btn.row').show(); } }); }); } else { //console.log('Price hiding logic is turned off on this page.'); } })(jQuery); </script> </div> <!-- /block --><div class="block" data-bid="1781"> <div class="footer-v1"> <div class="footer"> <div class="container"> <div class="row"> <div class="col-md-6 md-margin-bottom-40"> <a href="https://www.microstrain.com?utm_source=microstrain" target="_blank" rel="noreferrer"> <img id="logo-footer" class="footer-logo" src="/sites/all/themes/basic/assets/img/HBK_MicroStrain_White.png" alt="" style="height:auto;"></a> <!--<a href="https://www.lord.com?utm_source=microstrain" target="_blank" rel="noreferrer"> <img id="logo-footer" class="footer-logo" src="/sites/all/themes/basic/assets/img/lord.svg" alt="" /></a>--> <!--<p>Parker-LORD MicroStrain Sensing develops and manufactures wireless sensor data acquisition systems, inertial sensors, micro-displacement sensors, and software for custom and embedded applications.</p>--> </div> <div class="col-md-3 md-margin-bottom-40" > <div class="headline"><h2>Useful Links</h2></div> <ul class="list-unstyled link-list"> <li><a href="/our-company">Company</a><i class="fa fa-angle-right"></i></li> <li><a href="/company/news">News</a><i class="fa fa-angle-right"></i></li> <li><a href="/contact">Contact</a><i class="fa fa-angle-right"></i></li> <li><a href="/support/distributors">International Distributors</a><i class="fa fa-angle-right"></i></li> <!--<li><a href="https://parkercareers.ttcportals.com/search/jobs/within/25/miles/of/44.4454432/-73.099194?radius=44.4454432%2C-73.099194%2C40&ns_location=Williston%2C+VT%2C+USA"_blank" rel="noreferrer">Careers</a><i class="fa fa-angle-right"></i></li>--> <li><a href="https://spectris.wd3.myworkdayjobs.com/en-US/HBK_Careers/?locations=ab4bf8761beb10019d3518367f100000" rel="noreferrer">Careers</a><i class="fa fa-angle-right"></i></li> </ul> </div> <div class="col-md-3 map-img md-margin-bottom-40"> <div class="headline"><h2>Contact Us</h2></div> <address class="md-margin-bottom-40"> 459 Hurricane Lane, <br/> Williston, VT 05495 <br/> Phone: 802-862-6629 <br/> </address> <div class="headline"><h2>制品</h2></div> <a href="/wireless/ch">无线传感器网络</a> / <a href="/inertial/ch">惯性感测产品</a> / <a href="/displacement/ch">位移感应产品</a> </div> </div> </div> </div> <div class="copyright"> <div class="container"> <div class="row"> <div class="col-md-6"> <p> © HBK, Inc 2023 <a href="https://www.hbkworld.com/en/legal/privacy-policy" target="_blank" rel="noreferrer"><br> Privacy Statement</a> | <a href="https://files.microstrain.com/SensorCloud_Service_Agreement.pdf" rel="noreferrer" target="_blank">SensorCloud™ Services Agreement</a> | <!--<a href="https://files.microstrain.com/LORD_MicroStrain_Terms_and_Conditions_of_Sale.pdf" rel="noreferrer" target="_blank">Terms & Conditions of Sale</a>, --> <a href="/sites/default/files/documentation/2023-03-13_GTC%20Sales%20-%20US_HBK%20INC.pdf" rel="noreferrer" target="_blank">Terms & Conditions of Sale</a> </p> </div> <div class="col-md-6"> <ul class="footer-socials list-inline"> <li> <a href="https://www.facebook.com/LORDCorporation/" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="Facebook"> <i class="fa fa-facebook"></i> </a> </li> <li> <a href="https://www.linkedin.com/company/microstrain" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="Linkedin"> <i class="fa fa-linkedin"></i> </a> </li> <li> <a href="https://www.twitter.com/lordcorporation" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="Twitter"> <i class="fa fa-twitter"></i> </a> </li> <li> <a href="https://www.youtube.com/channel/UCBnEyuSIoST2QzAkph6pC2A" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="YouTube"> <i class="fa fa-youtube"></i> </a> </li> </ul> </div> </div> </div> </div> </div> </div> <!-- /block --><div class="block" data-bid="4446"> <style> .sticky { position: fixed!important; top: 0; width: 100%; } </style> <script> window.onscroll = function() {myFunction()}; var header = document.getElementsByClassName("header")[0]; var sticky = header.offsetTop; function myFunction() { if (window.pageYOffset > sticky) { header.classList.add("sticky"); } else { header.classList.remove("sticky"); } } </script></div> <!-- /block --> </div> <div class="popup" id="media-popup"> <iframe width="600" height="315" src="" frameborder="0" allowfullscreen></iframe> </div> </div><script src="https://code.jquery.com/jquery-3.7.1.js"></script> <script src="https://cdn.jsdelivr.net/npm/jquery-migrate@3.4.1/dist/jquery-migrate.min.js" onerror="advagg_fallback('');"></script> <script src="https://www.youtube.com/iframe_api"></script> <script defer="defer" src="/misc/jquery-extend-3.4.0.js?v=3.7.1"></script> <script defer="defer" src="/misc/jquery-html-prefilter-3.5.0-backport.js?v=3.7.1"></script> <script defer="defer" src="/misc/jquery.once.js?v=1.2"></script> <script defer="defer" src="/misc/drupal.js?sndi97" onload="function advagg_mod_1(){advagg_mod_1.count=++advagg_mod_1.count||1;try{if(advagg_mod_1.count<=40){init_drupal_core_settings();advagg_mod_1.count=100}}catch(e){if(advagg_mod_1.count>=40){throw e}else window.setTimeout(advagg_mod_1,1)}} function advagg_mod_1_check(){if(window.init_drupal_core_settings&&window.jQuery&&window.Drupal){advagg_mod_1()}else window.setTimeout(advagg_mod_1_check,1)};advagg_mod_1_check();"></script> <script defer="defer" src="/sites/all/modules/jquery_update/js/jquery_browser.js?v=0.0.1"></script> <script defer="defer" src="/sites/all/libraries/prism/prism.js?sndi97"></script> <script defer="defer" src="/sites/all/modules/prism/js/prism.settings.js?sndi97"></script> <script defer="defer" src="/sites/all/modules/entityreference/js/entityreference.js?sndi97"></script> <script defer="defer" src="/sites/all/modules/lord_blog/js/lord_blog.js?sndi97"></script> <script defer="defer" src="/sites/all/libraries/colorbox/jquery.colorbox-min.js?sndi97"></script> <script defer="defer" src="/sites/all/modules/colorbox/js/colorbox.js?sndi97"></script> <script defer="defer" src="/sites/all/modules/custom_microstrain/js/validation.js?sndi97"></script> <script defer="defer" src="/sites/all/modules/custom_microstrain/js/custom_microstrain.js?sndi97"></script> <script src="/sites/all/themes/basic/assets/plugins/jquery/jquery.min.js?sndi97" onload="if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(true);}"></script> <script src="/sites/all/themes/basic/assets/plugins/jquery/jquery-migrate.min.js?sndi97" onerror="advagg_fallback('');"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/bootstrap/js/bootstrap.min.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/back-to-top.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/parallax-slider/js/jquery.cslider.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/owl-carousel/owl-carousel/owl.carousel.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/dynamic-max-height/jquery.dynamicmaxheight.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/js/app.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/js/plugins/owl-carousel.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/js/plugins/parallax-slider.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/shopui/js/shop.app.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/jquery.parallax.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/validator.min.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/plugins/cube-portfolio/cubeportfolio/js/jquery.cubeportfolio.min.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/js/plugins/cube-portfolio/cube-portfolio-4.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/js/plugins/fancy-box.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/js/plugins/licover/js/jquery.licover.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/js/build/js.cookie.js?sndi97"></script> <script defer="defer" src="/sites/all/themes/basic/assets/js/custom.js?sndi97"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js" onerror="advagg_fallback('');"></script> <script defer="defer" src="/sites/all/modules/jquery_update/js/jquery_position.js?v=0.0.1"></script> <script defer="defer" src="/sites/all/modules/microstrain_jquery_validation/js/jquery.validate.js?sndi97"></script> <script> <!--//--><![CDATA[//><!-- function advagg_mod_2(){advagg_mod_2.count=++advagg_mod_2.count||1;try{if(advagg_mod_2.count<=40){jQuery.migrateMute=true;jQuery.migrateTrace=false;advagg_mod_2.count=100}}catch(e){if(advagg_mod_2.count>=40){throw e}else window.setTimeout(advagg_mod_2,250)}} function advagg_mod_2_check(){if(window.jQuery&&window.Drupal&&window.Drupal.settings){advagg_mod_2()}else window.setTimeout(advagg_mod_2_check,250)};advagg_mod_2_check(); //--><!]]> </script> <script> <!--//--><![CDATA[//><!-- function init_drupal_core_settings() {jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","setHasJsCookie":0,"ajaxPageState":{"theme":"basic","theme_token":"CNOpcD1ZD0BDvhVGuz19BXR6Cpc6n4ZifQpmcDzD3-o"},"ckeditor":{"modulePath":"sites\/all\/modules\/wysiwyg_ckeditor"},"colorbox":{"opacity":"0.85","current":"{current} of {total}","previous":"\u00ab Prev","next":"Next \u00bb","close":"Close","maxWidth":"98%","maxHeight":"98%","fixed":true,"mobiledetect":true,"mobiledevicewidth":"480px","file_public_path":"\/sites\/default\/files","specificPagesDefaultValue":"admin*\nimagebrowser*\nimg_assist*\nimce*\nnode\/add\/*\nnode\/*\/edit\nprint\/*\nprintpdf\/*\nsystem\/ajax\nsystem\/ajax\/*"},"better_exposed_filters":{"views":{"applications":{"displays":{"aerospace":{"filters":[]}}}}},"advagg_font":{"open-sans":"Open Sans","helvetica-neue":"Helvetica Neue","bebasneueregular":"BebasNeueRegular","roboto":"Roboto","lato":" Lato","roboto-condensed":" Roboto Condensed"},"advagg_font_storage":1,"advagg_font_cookie":1,"advagg_font_no_fout":0}); if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(false);}} if(window.jQuery && window.Drupal){init_drupal_core_settings();} //--><!]]> </script> <!--[if lt IE 9]> <script src="/sites/all/themes/basic/assets/plugins/respond.js"></script> <script src="/sites/all/themes/basic/assets/plugins/html5shiv.js"></script> <script src="/sites/all/themes/basic/assets/plugins/placeholder-IE-fixes.js"></script> <![endif]--> </body> </html>