1<!DOCTYPE html> 2<html class='responsive'> 3<head>
4<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"26b876b44f","applicationID":"4830334","transactionName":"dwwMFkddWlpVF0lFVVgADQ9QHVdUXxAS","queueTime":1,"applicationTime":114,"agent":""}</script>
vendor: 1 bytes, line 4
4
5<script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"26b876b44f",applicationID:"4830334",browserID:"4830345"};;/*! For license information please see nr-loader-rum-1.322.0.min.js.LICENSE.txt */ 6(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),a=0===Object.keys(r).length?e:r;for(let s in a)if(void 0!==e[s])try{if(null===e[s]){r[s]=null;continue}Array.isArray(e[s])&&Array.isArray(t[s])?r[s]=Array.from(new Set([...e[s],...t[s]])):e[s]instanceof Map||e[s]instanceof Set||e[s]instanceof Date||e[s]instanceof RegExp?r[s]=e[s]:"object"==typeof e[s]&&null!==t[s]&&"object"==typeof t[s]?r[s]=i(e[s],t[s]):r[s]=e[s]}catch(e){r[s]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>s});var n=r(384),i=r(8122);const a={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function s(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,a)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["xv",0,"1.322.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,a="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),s=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===s?.document?.visibilityState),c=""+s?.location,u=/iPad|iPhone|iPod/.test(s.navigator?.userAgent),d=u&&"undefined"==typeof SharedWorker,l=((()=>{const e=s.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)());r.d(t,["OF",0,u,"RI",0,i,"WN",0,l,"bv",0,a,"gm",0,s,"m",0,c,"mw",0,o,"sb",0,d,"zk",0,()=>{const e=s?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<s.performance.now())return e}])},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>u,x3:()=>c});var n=r(3241),i=r(3606),a=r(860),s=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:a.P3[t]||0};e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&d(e))}function u(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,d(e)}}function d(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const a=e.ee,o=i.i.handlers;if(a&&!a.aborted&&a.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=a.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}
6).forEach(t=>{t[0]?.on&&t[0].context()instanceof s.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}a.isolatedBacklog||delete o[t],a.backlog[t]=null,a.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],a=e[2];n.apply(i,a)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),a=r(2646),s=r(5607);const o="nr@context:".concat(s.W),c=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&u.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,a){!1!==a&&(a=!0);if(c.aborted&&!i)return;t&&a&&t.emit(e,r,n);var o=g(n);m(e).forEach(e=>{e.apply(o,r)});var u=v()[s[e]];u&&u.push([f,e,r,o]);return o},get:h,listeners:m,context:g,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{s[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,o,()=>new a.y(o)):new a.y(o)}function p(e,t){n[e]=m(e).concat(t)}function m(e){return n[e]||[]}function h(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),u=(0,n.Zm)();u.ee||(u.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,a){a?(a.buffer([e],i),a.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>a});var n=r(9908);a.on=s;var i=a.handlers={};function a(e,t,r,a){s(a||n.d,i,e,t,r)}function s(e,t,r,i,a){a||(a="feature"),e||(e=n.d);var s=t[a]=t[a]||{};(s[r]=s[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function a(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>a,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,a=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const s=[];for(var o=0;o<e;o++)s.push(i(r,a++).toString(16));return s.join("")}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>a});var n=r(944);const i=new Map;function a(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),a=t.includes("nrWrapper");return r||a||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},5289(e,t,r){"use strict";r.d(t,{GG:()=>s,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function a(){return"undefined"==typeof document||"complete"===document.readyState}function s(e,t){if(a())return e();const r=(0,i.J)(e),s=setInterval(()=>
6{a()&&(clearInterval(s),r())},500);(0,n.sp)("load",r,t)}function o(e){if(a())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(a())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>d,dV:()=>u,pV:()=>l});var n=r(6154),i=r(1863),a=r(944),s=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function u(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,s.i)(...Object.values(e.o))),e}function d(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,a.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),u(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>a,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function a(e,t,r){(0,n.sp)("pagehide",e,t,r)}},9300(e,t,r){"use strict";r(860).K7.ajax;r.d(t,["mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>a});var n=r(9566),i=r(1741);class a extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>a});var n=r(944),i=r(4261);class a{#e(e,...t){if(this[e]!==a.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>d});var n=r(3241),i=r(9908),a=r(1863),s=r(944),o=r(3969),c=r(8362),u=r(860);function d(e,t,r,a){const d=a||r;!d||d[e]&&d[e]!==c.d.prototype[e]||(d[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,u.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,s.R)(23,e)}})}function l(e,t,r,n,s){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(s||null===r)&&(0,i.p)("api-"+n,[(0,a.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",a="browser/blobs",s="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},u={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:a,[o.sessionReplay]:a,[o.logging]:s,[o.genericEvents]:"ins"};r.d(t,["$J",0,u,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,s,"df",0,a,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],a=t[n++];r.o(e,i)?0===a&&n++:0===a?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:a})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>"nr-rum-1.322.0.min.js",r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.322.0.PROD:";r.l=(n,i,a,s)=>{if(e[n])return void e[n].push(i);let o,c;if(void 0!==a){const e=document.getElementsByTagName("script");for(var u=0;u<e.length;u++){const r=e[u];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+a){o=r;break}}}if(!o){c=!0;var d={296:"sha512-/59P7qAoMYQDJAZerTRPChdYcdrlcoEAw2TwA1wz6Y0/XLmt3sblL
6I5JCXAuxG0YxsW7iqJzgrcO7NJWO58EfQ=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+a),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),d[s]&&(o.integrity=d[s])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={374:0,840:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const a=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=a);const s=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(s,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,a,s]=n;var o,c,u=0;if(i.some(t=>0!==e[t])){for(o in a)r.o(a,o)&&(r.m[o]=a[o]);if(s)s(r)}for(t&&t(n);u<i.length;u++)c=i[u],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.322.0.PROD"]=self["webpackChunk:NRBA-1.322.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),a=r(1741);var s=r(2555),o=r(981);t.K7.genericEvents,o.R.PA,o.R.UA,o.R.BP;const c={RESOURCES:"experimental.resources",REGISTER:"register"};var u=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var l=r(2614),f=r(944),g=r(8122);const p="[data-nr-mask]",m=e=>(0,g.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:u.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(c.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(c.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,f.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(c.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:l.wk,inactiveMs:l.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(p):""===t||null===t?e.mask_selector=p:(0,f.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,f.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,f.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var h=r(6154),v=r(9324);let b=0;const y={buildEnv:"PROD",distMethod:"CDN",version:v.xv,originTime:h.WN},_={consented:!1},w={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||_.consented},set consented(e){_.consented=e}
6,customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++b},listeningForIframeMessages:!1},R="BA";var A=r(7836),x=r(3241);const E={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908);const k="newrelic-iframe-";function T(e,t={},n,o){let{init:c,info:u,loader_config:d,runtime:l={},exposed:f=!0}=t;if(!u){const e=(0,i.pV)();c=e.init,u=e.info,d=e.loader_config}var p;e.init=m(c||{}),e.loader_config=(p=d||{},(0,g.a)(p,E)),u.jsAttributes??={},h.bv&&(u.jsAttributes.isWorker=!0),e.info=(0,s.D)(u);const v=e.init;e.runtime??=(e=>{const t=(0,g.a)(e,w),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:R,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(a.W.prototype).forEach(r=>{const n=a.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=A.ee.get(e.agentIdentifier),e.exposed=f,(0,x.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&h.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(k)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var j=r(1863),P=r(4261),N=r(1738);
6var O=r(1687),M=r(4234),I=r(5289),D=r(7767);function V(e){return!!(0,i.dV)().o.MO&&(0,D.V)(e)&&!0===e?.session_trace.enabled}var W=r(6389),B=r(7699);const C=new WeakSet,K=new WeakMap;class U extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,W.J)(()=>{(0,O.Ak)(e,this.featureName),t()}))}):(0,O.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,s.f)(e.info))return(0,f.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(K.has(e))return K.get(e);const i=(async()=>{if((0,D.V)(e.init))try{const{setupAgentSession:t}=await r.e(296).then(r.bind(r,1768));t(e)}catch(e){(0,f.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(B.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await Promise.resolve().then(function(){const e=new Error("Cannot find module '../../loaders/configure/iframe-message-handler'");throw e.code="MODULE_NOT_FOUND",e});t(e)}catch(e){(0,f.R)(23,e)}const[{Connector:i},{Harvester:a}]=await Promise.all([r.e(296).then(r.bind(r,6589)),r.e(296).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new a(e);const s=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(s.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();K.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,f.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,O.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,f.R)(34,e),this.abortHandler?.(),(0,O.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};h.RI?(0,I.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return V(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!C.has(e)&&(C.add(e),!(0,s.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}T(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var L=r(6630);class F extends U{static featureName=L.T;constructor(e){var t;super(e,L.T),this.setupInspectionEvents(),t=e,(0,N.Y)(P.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+P.Fw,[(0,j.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(296).then(r.bind(r,908)):r.e(296).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,x.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,I.sB)(t=>{e(t,"DOMContentLoaded")}),(0,I.GG)(t=>{e(t,"load")}),(0,I.Qr)(t=>{e(t,"navigate")}),this.ee.on(l.tS.UPDATE,(e,t)=>{(0,x.W)({type:"lifecycle",name:"session",data:t})})}}class G extends e.d{constructor(e){var t;(super(),h.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(F),T(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(P.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,P.cD,n);(0,f.R)(40,typeof r)}else(0,f.R)(39,typeof e)},t),function(e){(0,N.Y)(P.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,f.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,P.Dl,!0)},e)}(this),function(e){(0,N.Y)(P.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,P.nb,!1);(0,f.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(P.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+P.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,f.R)(65,typeof t)},e)}(this),this.run()):(0,f.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};
6return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,f.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,f.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var H=r(2843),z=r(782);class Y extends U{static featureName=z.T;constructor(e){super(e,z.T),h.RI&&((0,H.u)(()=>(0,S.p)("docHidden",[(0,j.t)()],void 0,z.T,this.ee),!0),(0,H.G)(()=>(0,S.p)("winPagehide",[(0,j.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(296).then(r.bind(r,9981))))}}var Z=r(3969);class q extends U{static featureName=Z.TZ;constructor(e){super(e,Z.TZ),this.importAggregator(e,()=>r.e(296).then(r.bind(r,9623)))}}new G({features:[F,Y,q],loaderType:"lite"})})()})();</script>
6 7 8<title> 9KerbalX 10 11</title> 12<link rel="apple-touch-icon-precomposed" type="image/png" href="/assets/apple-touch-icon-aa8d8273856608bb3c123131770d6898cf1fa5c3f9ffab12d4ab41125566d9ad.png" /> 13<link rel="shortcut icon" type="image/x-icon" href="/assets/favicon-e4854568bf220afb0a2b936889ffa5dc8244b3d0d234fc00243302d8cf9f7618.ico" /> 14<link rel="stylesheet" media="all" href="/assets/application-14af61187b78b575aea0940b0aafb3d6d9f8164fa5cdf7b6499a8dc09a221e7c.css" />
15<script src="/assets/application-82cfd606385604dc8e7bb91b9b1dcfda00b95c8a4f425a3b794e7698491e2da4.js"></script>
15 16 17<meta property="og:title" content="KerbalX.com"/> 18<meta property="og:url" content="http://kerbalx.com/about"/> 19<meta property="og:image" content="https://i.KerbalX.com/assets/KX_meta_image.png"/> 20<meta property="og:description" content="KerbalX Craft Sharing; The place to share your KSP creations"/> 21 22<meta name="csrf-param" content="authenticity_token" /> 23<meta name="csrf-token" content="9V7kb2CSad1LGQRh6EHuGKNpG+ajiZqoH5trPJY+hk9t7zhwjtFxAuUTpyvFAyxhOB9rsvpQ9MiwZkTauDDh8g==" /> 24
25<script src="/assets/google_analytics-753b32124501c3046dc847e6f76119ec803e16a9599e2650dcd7a5a4b0e543f0.js" async="async"></script>
25 26<meta name="description" content="Craft Sharing Simplified. Share your Kerbal Space Program craft, with automatic detection of mods, search by mod & craft attributes" /> 27<meta name="keywords" content="craft, sharing, share, KSP, kerbal, space, program, mod, search, rocket, space-plane" /> 28<meta name="msapplication-config" content="none"/> 29<meta name="google-site-verification" content="766uZ9XDIY3k4710enVrWLc6pNxJs0Xlmf0J8u-hTj4" /> 30<meta name="viewport" content="width=device-width, initial-scale=1.0"> 31</head> 32<body> 33<div id='content'> 34<div class='clamp_holder'> 35<div class='lhs_clamp'></div> 36<div class='rhs_clamp'></div> 37<div class='lhs_clamp_body'></div> 38<div class='rhs_clamp_body'></div> 39</div> 40<div class='' data-no-turbolink id='inner_content'> 41<div class='expand_view_links page_size_links'> 42<div class='glyphicon glyphicon-menu-right'></div> 43<div class='glyphicon glyphicon-menu-right'></div> 44</div> 45<div class='main_banner'> 46<div class='logo'></div> 47<h1 class='dynamic_size_text' data-max_width='90%' data-min_fontsize='18'>About</h1> 48<div class='links'> 49<h4><a href=/>Craft</a> | <a href=/hangars>Hangars</a> | <a href=/mods>Mods</a> | <a href=/missions>Missions</a></h4> 50</div> 51</div> 52 53<div class='user_bar_holder'> 54<div class='user_bar'> 55<a href="https://kerbalx.com/"> 56<h1 class='main_site_title animated_icon'> 57<div class='title_link_text'>KerbalX</div> 58<div class='kxicon kx-space-shuttle'></div> 59</h1> 60</a> 61<div class='user_bar_content'> 62</div> 63<div class='user_menu_link_holder'> 64<div class='unselectable user_menu_link' data-state='closed' id='user_menu_link_div'> 65<div class='user_menu_text'> 66Main Menu 67<div class='inline notifications_count'></div> 68<div class='kxicon'> 69<div class='kx-caret-down'></div> 70</div> 71</div> 72<div class='small_menu_icon'> 73<div class='bar'></div> 74<div class='bar'></div> 75<div class='bar'></div> 76</div> 77</div> 78<input type="hidden" name="notifications_count" id="notifications_count" value="
780" /> 79</div> 80<div class='small_sign_up_links centered'> 81<div class='left'><form class="button_to" method="get" action="/signup" data-remote="true"><input type="submit" value="sign up" /></form></div> 82<div class='right'><form class="button_to" method="get" action="/login" data-remote="true"><input type="submit" value="login" /></form></div> 83</div> 84<div class='clear'></div> 85</div> 86<div class='user_menu_holder hidden'> 87<div class='user_menu'> 88<div class='user_menu_nav'> 89</div> 90<div class='user_menu_content'> 91<a href='/' title='home: Main craft page'> 92<h4 class='menu_link'>Craft Search</h4> 93</a> 94<a href='/mods' title='lookup mods'> 95<h4 class='menu_link'>Mods Index</h4> 96</a> 97<a href='/parts' title='lookup parts'> 98<h4 class='menu_link'>Find Parts</h4> 99</a> 100<a href='/missions' title='Missions'> 101<h4 class='menu_link'>Missions</h4> 102</a> 103<a href='/hangars' title='public hangars'> 104<h4 class='menu_link'>Hangars</h4> 105</a> 106<a href='/users' title='find users'> 107<h4 class='menu_link'>Users</h4> 108</a> 109<div class='user_bar_content_in_menu'> 110<div class='upload_link menu_link only_mobile'>Upload Craft</div> 111</div> 112<div class='css_table'> 113<div class='value'> 114<a href='/about'> 115<div class='small_menu_link'>about</div> 116</a> 117</div> 118<div class='value'> 119<a href='/dev_blog'> 120<div class='small_menu_link'>dev_blog</div> 121</a> 122</div> 123</div> 124<div class='css_table'> 125<div class='value'> 126<a data-remote href='/signup'> 127<div class='small_menu_link'>sign up</div> 128</a> 129</div> 130<div class='value'> 131<a data-remote href='/login'> 132<div class='small_menu_link'>login</div> 133</a> 134</div> 135</div> 136</div> 137</div> 138</div> 139 140</div> 141<div class='iphone_assist_bar'></div> 142<div class='user_bar_counter'></div>
143<script src="/assets/about_page-3017b25813e5348d945a028353022ae37e73cdea0651cbc7d61e683d496f2c39.js"></script>
143 144<div id='about'> 145<div class='page_spacer'></div> 146<div class='grid_10 push_1 justify msmall'> 147<h1>Welcome to KerbalX</h1> 148 149<p>KerbalX is a place to share your Kerbal Space Program craft files, but it's much more than a simple file host.</p> 150 151<p>KerbalX makes it very easy to share modded craft and enables you to search for craft by the mods they use.<br> 152As craft are uploaded they are scanned for the mods they use and mod craft get a list of their required mods displayed on their page (as well as other info that is read from the craft file). 153You can post pictures & videos about your craft and you can customize the layout of the page as much as you like, or just let the site sort it out for you. </p> 154 155<p>KerbalX's Craft Search lets you select which mods you use and it will find craft that will work with your setup. You can also filter craft by which building they were built in (SPH/VAB), if they're a subassembly or not, filter by style (ie lander, rover, spaceplane etc), their part count, which science parts they have and more.<br> 156When you download a craft you can also choose to download it's "CKAN metapackage" that can be used to tell the CKAN mod manger to automatically installed the required mods.</p> 157 158<div class='trim'>You can also:</div> 159 160<ul> 161<li><p>Create custom groups of craft called "Hangars" containing your pick of your and other users' craft.<br> 162<div class='small_top'>Hangars can be private or public and can contain any craft you like. They can also be set to allow others to post their craft into them (great if you run a youtube or twitch steam where viewers submit craft to you).</div></p></li> 163<li><p>Create ModPacks that contain custom selections of mods.<br> 164<div class='small_top'>Makes it easy to share you mod setup with others and you can also load a ModPack into a search. If you use CKAN you can create a ModPack by dropping a file CKAN generates to quickly select your installed mods.</div></p></li> 165<li><p>Search for Mods and Parts 166<div class='small_top'>KerbalX has a huge database of parts and which mod they belong to. You can search this database to find a part you might be missing, or just to see the sorts of craft people make with certain mods.</div></p></li> 167</ul> 168</div> 169<div class='clear'></div> 170<div class='vblk_1'></div> 171<div class='justify small'> 172<div class='grid_5 push_1'> 173<h4>Craft Sharing Made Simple</h4> 174 175<p>Drag and drop a craft file on the site and KerbalX will workout what mods it uses and other info about it. You can then customize a page with pictures, text, and videos about the craft. </p> 176 177<h4>KSP Mod Integration</h4> 178 179<p>You can upload your craft directly from within KSP using the <a href="/mod">KerbalX Mod</a> or the more advanced <a href="/CraftManager">Craft Manager Mod</a>. 180As well as uploading using either mod you can also tag craft for download on the site and the mods will fetch the craft for you when you're in KSP. You can use this to tag craft for download while you're away (ie on your mobile) & then when you return to KSP the mod will fetch the craft for you.</p> 181 182<div class='centered'> 183<h5><a href="/Craft Manager">Get Craft Manager here</a></h5> 184<h6><a href="/mod">Get the KerbalX mod here</a></h6> 185</div> 186</div> 187<div class='grid_5'> 188<h4>CKAN Integration</h4> 189 190<p>
190KerbalX and CKAN work together in a number of ways. </p> 191 192<ul> 193<li>All mod craft on KerbalX have a .ckan file available, if you download and give it to CKAN, the mod manager will automatically install the required mods.<br></li> 194<li>You can also drop your <code>installed-defaults.ckan</code> file onto the mod search section and KerbalX will find craft that are compatible with your mod setup.</li> 195<li>KerbalX uses CKAN as one of its ways to discover about mods.</li> 196</ul> 197</div> 198<div class='clear'></div> 199<div class='vblk_1'></div> 200<div class='grid_5 push_1'> 201<h4>Built for the community</h4> 202 203<p>My name is Katateochi and I'm a KSP addict. I also love the KSP community, and that's why I've built this site. I wanted to make it easy to share modded craft without the hassle of remembering what mods you used and then finding download links for them all.<br> 204KerbalX is in rolling development; it is stable and has its key features in place, but there are more features I want to add. I'm always interested to hear any feedback/suggestions you have 205<a target="blank" href="http://forum.kerbalspaceprogram.com/index.php?/profile/35181-katateochi/">so message me on the KSP forums!</a><br> 206Over the last year KerbalX had an uptime of 99.6% </p> 207 208</div> 209<div class='grid_5'> 210<h4>Powered by the community</h4> 211 212<p>KerbalX uses a crowd sourced approach to discovering about mods. Users can download 213<a href="/partmapper">the part mapper tool</a> 214and provide KerbalX with info about the mods they have installed. </p> 215 216<p>These days KerbalX also uses CKAN to get info about mods, but not all mods are listed by CKAN, so KerbalX still needs it's users to run the part mapper tool and provide info. </p> 217 218<p><strong><a href="/partmapper">Download the PartMapper</a></strong> and help make KerbalX better</p> 219 220</div> 221</div> 222<div class='grid_10 sigma push_1 link_groups'> 223<div class='vblk_1'></div> 224<div class='grid_6'> 225<a href='/'> 226<div class='big_group'> 227<h1>Craft</h1> 228<h3>Browse and Search</h3> 229<div class='tip'> 230Explore a vast range of creations from people who are quite possibly as mad as you. 231</div> 232</div> 233</a> 234</div> 235<div class='grid_6 omega'> 236<div class='mobile_05_spacer'></div> 237<a href='/users'> 238<div class='big_group'> 239<h1>Users</h1> 240<h3>Find KX Users</h3> 241<div class='tip'> 242<p>If you know a user's username you can goto 243<code>KerbalX.com/<username></code> or <code>KerbalX.com/<username>/craft</code></p> 244</div> 245</div> 246</a> 247</div> 248</div> 249<div class='grid_10 sigma push_1 centered'> 250<div class='vblk_05'></div> 251<div class='grid_4'> 252<div class='panel'> 253<h5>Integrate with KSP</h5> 254 255<p>Upload & download craft in KSP</p> 256 257<h5><a href="/mod">KXMod</a> | <a href="/CraftManager">Craft Manager</a></h5> 258 259</div> 260</div> 261<div class='grid_4'> 262<div class='mobile_05_spacer'></div> 263<div class='panel'> 264<h5>Got a Suggestion?</h5> 265 266<p>Post it on the KSP forum:</p> 267 268<h5><a target="blank" href="http://forum.kerbalspaceprogram.com/index.php?/topic/84389-kerbalxcom-craft-sharing-site-with-auto-mod-detection-and-search-by-mod-feature/">KSP Forum Thread</a></h5> 269 270</div> 271</div> 272<div class='grid_4'> 273<div class='mobile_05_spacer'></div> 274<div class='panel'> 275<h5>Found a bug?</h5> 276 277<p>Let me know on github;</p> 278 279<h5><a target="blank" href="https://github.com/Sujimichi/KerbalX/issues">KerbalX - Bug Tracker</a></h5> 280 281</div> 282</div> 283</div> 284<div class='grid_10 sigma push_1 link_groups'> 285<div class='vblk_05'></div> 286<div class='grid_3'> 287<a href='/hangars'> 288<div class='group'> 289<h4>Hangars</h4> 290<div class='centered'>Custom groups of craft</div> 291</div> 292</a> 293</div> 294<div class='grid_3'> 295<div class='mobile_05_spacer'></div> 296<a href='/mod_packs'> 297<div class='group'> 298<h4>Mod Packs</h4> 299<div class='centered'>Share you Mod setup</div> 300</div> 301</a> 302</div> 303<div class='grid_3'> 304<div class='mobile_05_spacer'></div> 305<a href='/mods'> 306<div class='group'> 307<h4>Mods</h4> 308<div class='centered'>KX mod list</div> 309</div> 310</a> 311</div> 312<div class='grid_3'> 313<div class='mobile_05_spacer'></div> 314<a href='/parts'> 315<div class='group'> 316<h4>Parts</h4> 317<div class='centered'>Search for parts</div> 318</div> 319</a> 320</div> 321</div> 322<div class='grid_10 sigma push_1'> 323<div class='grid_12'> 324<div class='vblk_05'></div> 325<a class='donation_info' href='#'> 326<div class='panel'> 327<div class='sgrid_4'> 328<img src="https://i.kerbalx.com/assets/patreon_logo.png" alt="Patreon logo" /> 329</div> 330<div class='sgrid_4'> 331<h5 class='centered'>Help Support KerbalX.com</h5> 332</div> 333<div class='sgrid_4'> 334<div class='vblk_05'></div> 335<div class='right'><img src="https://www.paypalobjects.com/en_GB/i/btn/btn_donate_LG.gif" alt="Btn donate lg" /></div> 336</div> 337<div class='clear'></div> 338</div> 339</a> 340</div> 341</div> 342<div class='grid_10 sigma push_1 link_groups centered'> 343<div class='vblk_05'></div> 344<div class='grid_4'> 345<a href='/statistics'> 346<div class='group auto_height'> 347<h5>Site Statistics</h5> 348</div> 349</a> 350</div> 351<div class='grid_4'> 352<div class='mobile_05_spacer'></div> 353<a href='/dev_blog'> 354<div class='group auto_height'> 355<h5>Dev Blog</h5> 356</div> 357</a> 358</div> 359<div class='grid_4'> 360<div class='mobile_05_spacer'></div> 361<a href='/fontpack'> 362<div class='group auto_height'> 363<h5>KerbalX Font Pack</h5> 364</div> 365</a> 366</div> 367</div> 368<div class='clear'></div> 369<div class='centered'> 370<a href='/orbits'> 371<div class='grid_12'> 372<div class='orbits'></div> 373</div> 374</a> 375</div> 376<div class='centered'> 377<div class='vblk_1'></div> 378<h6>KerbalX has been live for 4408 days</h6> 379</div> 380</div> 381 382</div> 383</div>
384<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"7aee7b7b44444921890a880338d9124b","r":1,"spa":2}' crossorigin="anonymous"></script>
384 385</body> 386<div class='clear'></div> 387 388<div class='flyin_dialog_container click_protected'></div> 389<div class='hidden' id='dialog_container'></div> 390<div class='hidden click_protected' data-no-turbolink id='notification_container'> 391<div class='notification_content'></div> 392<div class='links'></div> 393</div> 394<div id='footer'> 395<div id='launch_pad'> 396<div class='left_image'></div> 397<div class='right_image'></div> 398<div class='launch_pad_content'> 399<p>KerbalX v1.5.10</p> 400</div> 401</div> 402<div id='footer_content'> 403<div class='grid_12 centered not_affiliated'> 404KerbalX is a fan site and is not affiliated with Squad or the Kerbal Space Program 405</div> 406<div class='grid960'> 407<div class='grid_4 m_centered'> 408<a class='donation_info' href='#'> 409<h5>Help Support KerbalX.com</h5> 410<div class='vblk_05'></div> 411<div class='sgrid_6'><img src="https://i.kerbalx.com/assets/patreon_logo.png" alt="Patreon logo" /></div> 412<div class='sgrid_6'><img src="https://i.kerbalx.com/assets/paypal_button.webp" alt="Paypal button" /></div> 413</a> 414</div> 415<div class='grid_4 centered'> 416<div class='vblk_05'></div> 417<h3> 418<a class='just_a_link' href='#'> 419Contact Support 420</a> 421</h3> 422<a data-remote="true" href="/help/terms">terms of use</a> 423| 424<a href="/privacy">privacy policy</a> 425</div> 426<div class='grid_4 sigma'> 427<div class='vblk_1'></div> 428<h5 class='m_right'><a data-no-turbolink="true" href="/mod">Get the KerbalX Mod</a></h5> 429<div class='clear'></div> 430<div class='vblk_2'></div> 431<h5 class='m_right'><a data-remote="true" href="/help/s_and_f">Suggestions and Feedback</a></h5> 432</div> 433<div class='vblk_1'></div> 434<div class='grid_12 sigma'> 435<div class='grid_7 sigma'> 436<div class='footer_logo'></div> 437</div> 438<div class='grid_5 sigma'> 439<div class='friend_links'> 440<h5 class='m_centered'> 441<a target="blank" href="https://spacedock.info">SpaceDock</a> 442| 443<a target="blank" href="https://forum.kerbalspaceprogram.com/index.php?/topic/154922-ckan-the-comprehensive-kerbal-archive-network-v1253-woomera/">CKAN mod manager</a> 444</h5> 445<div class='m_centered'> 446<a target="blank" href="http://www.reddit.com/r/KerbalSpaceProgram">KSP subreddit</a> 447| 448<a target="blank" href="http://forum.kerbalspaceprogram.com">KSP Forum</a> 449| 450<a target="blank" href="https://www.kerbalspaceprogram.com/kspstore/">KSP Store</a> 451</div> 452</div> 453</div> 454</div> 455<div class='clear'></div> 456</div> 457<div class='author'> 458<p>Developed and Maintained by Katateochi</p> 459</div> 460</div> 461</div> 462<div class='rocket_body'> 463<div class='nosecone'></div> 464<div class='text'>K</div> 465<div class='text'>S</div> 466<div class='text'>P</div> 467<div class='engine_flames_red'></div> 468<div class='engine_flames_yellow'></div> 469</div> 470<div class='legs'></div> 471</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.